解決済みの質問
ページの読み込みが完了した段階で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()">
などと、いろいろと弄り回してはみたのですが、
どつぼにハマるばかりだったので、解る方ご教授下さいませ…。
投稿日時 - 2008-10-20 17:23:50
原因はおそらく予約語だと思いますが、とりあえず
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>
それにしても、中間ページにエンドユーザーのブラウザを
介するのはあまりいいことではありませんね。
投稿日時 - 2008-10-20 18:16:25
お礼
解決しました!ありがとうございます!
>中間ページにエンドユーザーのブラウザ
そうですね、重々承知しています。
これまで編集した結果のエクスポートを手動で行っていたのですが、「出し忘れがあると不便で・・・」という声があがったことから自動でエクスポートを行うようにしたかったのです。
PHPを使用しているので他にやりようもあったのかもしれませんが、社内でのみ使うものだという事と、時間をあまりかけられない事からこういった手段を取りました。
とても助かりました。ありがとうございます。
投稿日時 - 2008-10-20 18:51:33
3人が「このQ&Aが役に立った」と投票しています
ベストアンサー以外の回答(1件中 1~1件目)
exportって予約語だからでは?
export にせず、expor に変更すると正常に動作します。
参考URL:http://memo.xight.org/2005-12-22-2
投稿日時 - 2008-10-20 18:16:18
お礼
exportが予約語だったんですね…
ありがとうございます。
投稿日時 - 2008-10-21 10:04:56