/ / IE jqueryの無効な引数-jquery、internet-explorer、jqgrid、invalid-argument

IE jquery - jquery、internet-explorer、jqgrid、無効な引数の無効な引数

動作するポートレットアプリケーションがありますFirefoxとChromeでは問題なく動作しますが、IE 8および9では爆破されますが、ポータルページにポートレットのインスタンスが5つ以上ある場合のみです。ページにポートレットのインスタンスが4つ以下の場合、IEでも正常に機能します。

ページに5つ以上のポートレットのインスタンスがある場合に表示されるエラーは次のとおりです。

SCRIPT87:引数が無効です。 jquery-1.5.2.min.js、行16文字25442

コードはjQueryといくつかのプラグイン、つまりjqGridを使用します。ここに私がこれまで問題を解決しようとしたものがありますが、どれも違いはありませんでした:

  1. jQueryおよびjQuery-UIライブラリをアップグレードしました。コードはそれぞれ1.5.2と1.7.2を使用します。最新バージョンにアップグレードしても違いはありません。
  2. jqGridライブラリをアップグレードしました。コードはバージョン4.1.2を使用します。 4.3.2にアップグレードしても違いはありません。
  3. bgiframeプラグインをアップグレードしました。コードはバージョン2.1を使用します。 2.1.3にアップグレードしても違いはありません。

IEであるため、何が起こっているのかをデバッグするのは非常に困難です。

誰もこの行動を見たことがありますか、何が起こっているのかについて何か考えがありますか?

更新:

OK、jQueryファイルの最小バージョンを非縮小バージョンに置き換えました。 IE 8のページにポートレットのインスタンスが5つ以上ある場合に表示されるエラーは次のとおりです。

Message: Invalid argument.
Line: 2105
Char: 5
Code: 0
URI: https://nasa-iceint.nasa.gov/portal/ice-theme/js/jquery-1.5.2.js

jQueryファイルからの関連コードは次のとおりです。

if ( set ) {
// convert the value to a string (all browsers do this but IE) see #1070
elem.setAttribute( name, "" + value );
}

何か案は?

回答:

回答№1は4

ここで何が間違っていたのかがわかりました。既に多くのCSSがロードされている場合にIEでCSSファイルを動的にロードすると、問題が発生する可能性があります。見る IEでCSSスタイルシートを動的にロードできない

うまくいけば、これが同じ問題に出くわす他の誰かを助けます。


回答№2の場合は0

多分あなたのページは整形式ではないJSONを追加しています。

var jsonThatWorksOnFirefoxAndChrome = {
first:"ok",
last: "not ok, remove the comma after this string to fix it",
}

ChromeとFirefoxは最後のカンマを無視します。


回答№3の場合は0

また、jQueryの競合をチェックし、jQueryの1つのバージョンのみを1回だけ含めるようにしてください。