• ベストアンサー

Javascript IEで「識別子がありません」とエラーが出てしまいます。

ページの読み込みが完了した段階でsubmit()して、 formの内容をactionで指定した先にPOSTしたいのですが、IE6で エラー:識別子がありません コード:0 と出てしまい動作しません。 以下がそのソースです。 --------------- <html> <head> <meta http-equiv="Content-Script-Type" content="text/javascript"> </head> <body onload="document.export.submit()"> <form action="list.php" method="POST" name="export"> <input type="hidden" name="data[0][text]" value="テキスト"> <input type="hidden" name="mode[export]" value="" /> <input type="submit" name="submitButton" value="エクスポート"/> </form> </body> </html> --------------- なお、Firefox2.0では正常に動作しています。 <body onload="document.form['export'].submit()"> などと、いろいろと弄り回してはみたのですが、 どつぼにハマるばかりだったので、解る方ご教授下さいませ…。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

原因はおそらく予約語だと思いますが、とりあえず formにnameをつけるやり方をやめるだけでなんとかなります。 <script> window.onload=function(){ var tag=document.getElementById("export"); tag.submit(); } </script> <form action="xxx.php" method="POST" id="export"> <input type="hidden" name="data[0][text]" value="テキスト"> <input type="hidden" name="mode[export]" value="" /> <input type="submit" name="submitButton" value="エクスポート"/> </form> それにしても、中間ページにエンドユーザーのブラウザを 介するのはあまりいいことではありませんね。

d-grinder
質問者

お礼

解決しました!ありがとうございます! >中間ページにエンドユーザーのブラウザ そうですね、重々承知しています。 これまで編集した結果のエクスポートを手動で行っていたのですが、「出し忘れがあると不便で・・・」という声があがったことから自動でエクスポートを行うようにしたかったのです。 PHPを使用しているので他にやりようもあったのかもしれませんが、社内でのみ使うものだという事と、時間をあまりかけられない事からこういった手段を取りました。 とても助かりました。ありがとうございます。

その他の回答 (1)

  • t_netbug
  • ベストアンサー率34% (15/44)
回答No.1

exportって予約語だからでは? export にせず、expor に変更すると正常に動作します。

参考URL:
http://memo.xight.org/2005-12-22-2
d-grinder
質問者

お礼

exportが予約語だったんですね… ありがとうございます。

関連するQ&A

専門家に質問してみよう