• 締切済み

javascriptのフォームデータをCGIで複数行取得

javascript内の変数を複数行のフォームでCGIに渡したいのです。 その際のコードが document.write("<form name='form1' action='xxx.cgi' method='post' enctype='text/plain'>"+           "<input type='hidden' name='state' value=''>"+           "<input type='hidden' name='state2' value=''>"+           "</form>"+           "<input type='button value='送信' onClick='tocgi(a,b)'>");       tocgi(n1,n2){       document.form1.state.value=n1;       document.form1.state2.value=n2;       document.form1.submit();        } なのですが、a、bの値がそれぞれ10、20だった時、一行目のフォームデータは出力されるのですが、2行目が出力されないのです。実行結果でいうとstate=10ですね。引数を一つにしても同じでした。何がいけないのか、全然わかりません…。それとも、CGIのコードの書き方に問題があるのでしょうか。でも、CGIの方は変えずに単純にHTMLで記述すると上手くいくみたいなんですよね。どなたかわかる方がいたら助けて下さい!

みんなの回答

  • auty
  • ベストアンサー率58% (284/486)
回答No.1

・ 間違いが幾つかありましたので、   以下のコードを参考にしてみてください。 ------------------------------------------------------------ <html> <head> <script type="text/javascript"> var a=10; var b=20; document.write("<form name='form1' action='p_query.jsp' method='post'>"+ "<input type='hidden' name='state' value=''>"+ "<input type='hidden' name='state2' value=''>"+ "<input type='button' value='送信' onClick='tocgi(a,b);return false;'></form>"); function tocgi(n1,n2){ document.form1.state.value=n1; document.form1.state2.value=n2; document.form1.submit(); } </script> </head> <body> <h1>TEST</h1> </body> </html>

関連するQ&A