IEで「エラー:識別子、文字列または数がありません。」エラー

この記事は次のブログに引っ越しました。

IEで「エラー:識別子、文字列または数がありません。」エラーがにっちもさっちも Prototype.jsを使ってフォームをAjaxちっくに投稿するページを作っていたんですが、FireFoxとかは問題ないのにIEだと「実行しましたがページでエラーが発生しました。」とエラーが発生するんです。 エラー内容 ライン: 49 文字: 3 エラー:識別子、文字列または数がありません。 コード:0 URL: http://my.domain.com/page.html エラー発生行を見ても外部ファイルを読み込んでいるのであてにもならないし。IEの場合、FireFoxOperaのような簡易エラーコンソールが標準で付いてないから こういうときに困る。 ドゥユーリメンバ♪ 回避策 とりあえず結論から言うと、JSON形式でメンバにデータを渡すときに、最後のパラメータ区切り用のカンマを取るとエラーが回避された。 色々切り分けをしていたら下記箇所で問題を起こしてたようだ。 間違い var pars = Form.serialize("idFormInput"); var oAjax = new Ajax.Updater( 'idResultMsg', 'http://my.domain.com/update.php', { method: 'post', parameters: pars, //←注目! }); 正解 var pars = Form.serialize("idFormInput"); var oAjax = new Ajax.Updater( 'idResultMsg', 'http://my.domain.com/update.php', { method: 'post', parameters: pars //←カンマが多かったの! }); 所感 えぇ…。うっそーん。いやさぁ、確かに最後にカンマがあれば「次にも指定が続きそうだ」という解釈はわかるよ。でもCSSPHPでも大丈夫じゃん。普段はここまでグチらないんだけど、「これを機にIEのデバッガないかなー」とかって、色々探して入れたらどうもVistaと相性が悪いみたいでして。突然激しく不安定になったので、イラっと来たわけです。まずい組み合わせ Vista Home Basic Microsoft Script Debugger Companion J いや、ワタクシ、普段は短気じゃないんですよ。むしろ、そう、まるで穴があったら取りあえず指を突っ込んで痛い目を見る猿のような、好奇心旺盛な精神の持ち主なんです。ただ、「なるべく余計なものを入れないと決めたマシン」で痛い思いをしただけに。「打たれ強いんでなくて学習しないんです」という言葉を思い出して、記録に残すことにする。とほほ・・・。