では動作しません、私が使用して、サーバーからHTMLの一部をロードすることになっているコンテナの要素を持っている:ExtJSの:AUTOLOADはExtJSの2.2.1を使用してIE
autoLoad: { url: 'someurl' }
これはFirefoxで正常に動作しますしかし、IE7のために、これはライン7170でEXT-すべて-debug.jsとするのが最良の構文エラーになります:
this.decode = function(json){
return eval("(" + json + ')');
};
私はこれにその機能を回すことによって、これを固定:
this.decode = function(json){
return eval('(function(){ return json; })()');
};
autoLoadは両方のブラウザでうまく動作しますが、いくつかの奇妙なバグがあります。また、ExtJSライブラリでこれを修正したくないのは本当ですか?(特に縮小されたext-all.jsでは1行にJavascriptの半メガバイトのように)。
私はこのバグについて多くを見つけることができませんでした。私が試した
バリエーション:<script>
タグなし
// With <script> tags around all the HTML
autoLoad: { url: 'someurl', scripts: true }
// With <script> tags around all the HTML
autoLoad: { url: 'someurl', scripts: false }
そしてその逆。 HTMLにはJavascriptもありませんが、最終的に返されるHTML内でJavascriptを使用するため、可能である必要があります。
考えられる最も単純なHTMLであっても、エラーは同じであるため、この問題はHTMLにはありません。
UPDATE - ドノバンへの対応:
これを使用する最も簡単な場合には、このいずれかになります。
changeRolesForm = new Ext.Panel({
height: 600,
items: [{ autoScroll: true, autoLoad: WMS.Routing.Route("GetRolesList", "User") + '?userID=' + id}]
});
ここに関与なしデータストアはありません。レスポンスタイプもtext\html
で、jsonではなく、混乱させることはありません。そして、言ったように、それはFirefoxでうまくいきますし、Firefoxでは同じeval
機能を実行しますが、エラーはありません。だから、Firefoxは実行の別のパスに従うのと同じではありません。それは同じですが、eval
のエラーはありません。
「回答」は、エラーがIEでのみ発生するという事実には該当しません。私たちは、Ext 3.3.0においても同じことを経験しています。 –
こんにちはJulian、FireBugを見ると、サーバから返されるものは何ですか? Extがサーバにコールした後、リクエストとレスポンスが投稿された場合(ヘッダを含む)に役立つでしょう。 –
チャールズプロキシを使用して、Robが後でIEのデバッグツールがひどいので、情報を取得することをお勧めします –