プロが教えるわが家の防犯対策術!

ページの読み込みが完了した段階で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()">
などと、いろいろと弄り回してはみたのですが、
どつぼにハマるばかりだったので、解る方ご教授下さいませ…。

A 回答 (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>

それにしても、中間ページにエンドユーザーのブラウザを
介するのはあまりいいことではありませんね。
    • good
    • 0
この回答へのお礼

解決しました!ありがとうございます!

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

とても助かりました。ありがとうございます。

お礼日時:2008/10/20 18:51

exportって予約語だからでは?


export にせず、expor に変更すると正常に動作します。

参考URL:http://memo.xight.org/2005-12-22-2
    • good
    • 0
この回答へのお礼

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

お礼日時:2008/10/21 10:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!