• 締切済み

ブラウザの違いにより入力項目数を変えたいのですが...

使用しているブラウザが「Netscape Navigator」なのか「Internet Exploror」なのか調べて、入力項目数をかえるようにしたいと思います。 <script language="JavaScript"> <!-- if(navigator.appName == "Microsoft Internet Explorer"){ : : } // --> </script> : : for(i=0; i<num; i++){  <input type=text name="in99" value="" size="5"> } CGIをCで作成しています。ここで使っているnumをブラウザによって可変にしたいのです。 次ページへのデータ引渡しのバイト数がIEでは制限があるようなので(2048byte)このようなことを考えたのですが、Javascriptで得た結果をCの中で使うことなのでできないように思います。こういうことをする方法はあるのでしょうか?どうか教えてください。

みんなの回答

回答No.1

Javascriptの変数の値をCに渡せればいいんですよね? それなら、hiddenを使うという手があります。 <form action="/cgi-bin/sample.cgi" method="get">   <input type="hidden" name="num">   <input type="button" value="送信" onClick="javascript:xxx(this.form)"> </form> : <script language="Javascript"> <!-- function xxx(form) {   var num = 100;   form.submit(); } //--> </script> そうすれば、   http://???/cgi-bin/sample.cgi?num=100 ということになりますから、 あとはCで、環境変数からnumの値を拾えばいいというわけです。

lily02
質問者

お礼

ありがとうございました。 根本的解決ではありませんが、ブラウザの種類を調べてIEではメッセージを出すことで対応しました。

関連するQ&A

  • JavaScriptで「実行中のブラウザ」の確認

    JavaScriptでプログラムを組んでいます。 OSはWin7 Home 64bit、通常使うブラウザは「FireFox」です。 ブラウザによって実行内容を変えたいため、「navigator.appName」で情報を得るのですが、 どのブラウザでも「Netscape」(FireFoxのことだと思います)になってしまいます。 どうも「navigator.appName」は通常使うブラウザの値が設定されているようです。 「通常使うブラウザ」ではなく、「実行中のブラウザ」の情報が欲しいのです。 いい方法があれば、教えてください。

  • document.write が作動してくれません!

    /* ブラウザが 「IE Version 5 以上」 または 「Netscape Navigator Version 4 以上」 のときに文字列を出力するつもりで、以下のscriptを書きましたが、IE Version 6 のパソコンで文字列が出力されません。 (エラーにはなりません。インターネット・セキュリティは既定レベルの「中」です。) 何が間違いなのかお教えくださいませ。 <script type="text/javascript"> <!-- if ( ( (navigator.appName.indexOf("Microsoft") >=0)&&(navigator.appVersion.charAt(0) >4) ) || ( (navigator.appName.indexOf("Netscape") >=0)&&(navigator.appVersion.charAt(0) >3) ) ) { document.open(); document.write("「パソコン申し込み」 では、入力していただいた貴下の個人情報を送信する際に、情報の暗号化をおこないます。"); document.close(); } //--> </script> */

  • Javaでブラウザ判定

    Javaでブラウザの判定を行いたいのですが 何かありますでしょうか? なにぶん初心者なもので どうしたらいいか検討もつきません。 JavaScriptでの判定方法は navigator.appNameなどで出来るみたいですが JavaScriptではなく Javaで出来るかどうか探しているのですが 分かる方がいらっしゃいましたら ご教授下さい。 よろしくお願いします。

    • ベストアンサー
    • Java
  • ブラウザが判別出来ない。

    お世話になっております。 JavaScriptの本を購入しました。 その本にブラウザ判定のスクリプトが掲載されており、それをそのままアップしたところ、私はIE6なのにIE4と判別されてしまいました。 下記がそのスクリプトです。 ちなみに、私はXPのIE6です。 このスクリプトはこれで完璧なのでしょか? また、出来ましたら、このスクリプトを試していただけたらと思うのですが・・・よろしくお願い致します。 <script language="JavaScript"> <!-- if( navigator.appVersion.charAt(0)==4){window.location.href = "nn4.html"} // NN Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "nn5.html"} // NN Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "nn6.html"} // NN Ver6 の場合 } if( navigator.appName.charAt(0)=="M"){ if( navigator.appVersion.charAt(0)==2){window.location.href = "ie2.html"} // IE Ver2 の場合 if( navigator.appVersion.charAt(0)==3){window.location.href = "ie3.html"} // IE Ver3 の場合 if( navigator.appVersion.charAt(0)==4){window.location.href = "ie4.html"} // IE Ver4 の場合 if( navigator.appVersion.charAt(0)==5){window.location.href = "ie5.html"} // IE Ver5 の場合 if( navigator.appVersion.charAt(0)==6){window.location.href = "ie6.html"} // IE Ver6 の場合 } //--> </script> <noscript>JavaScript を使用しています。JavaScript を有効にしてください。</noscript>

  • 何も表示されません。

    javascriptの超心者です。 テキストを見よう見まねで作った見たのですがうまくできないので御教授ください。 「ブラウザ名を取得する」をしたいのですが何も表示されません。 新規メモ帳を立ち上げて、 <script type ="text/javascript"> <!--document.write("ブラウザ名:"navigator.appname); //--> </script> と記載して、デスクトップにtest.htmlで保存しました。 それをダブルクリックしても真っ白です。 何が足りないのでしょうか?

  • JavaScriptを使って、現在のブラウザがhtmlかchmかを判定する方法は?

    よろしくお願いします。 htmlをまとめて、chmを作っています。 JavaScriptを使って、現在のブラウザがhtmlかchmかを判定する方法はありますか? navigator.appNameで見分けられると思ったのですが、両方ともMicrosoft Internet Explorerになっています。 何か良い方法があれば教えていただけないでしょうか。 つまり、html、chmによって処理を分けたいと思っているのです。

  • ブラウザで表示を変更

    <SCRIPT TYPE="text/javascript"> <!-- if (navigator.userAgent.indexOf("MSIE")!="-1"){//for IE document.write("インターネットエクスプローラー"); } else { document.write("別ブラウザ"); } //--> </SCRIPT> 上記JavaScriptと同じように、インターネットエクスプローラーとそれ以外のブラウザで表示させるメッセージを変えたいのですが、どのように書けばいいのでしょうか。

    • ベストアンサー
    • Perl
  • ブラウザ判定でMozilla Firefoxの取得の方法

    IEかNNかを見分けるためのサンプルソースを見たら navigator.appName を使用していました。 しかしappNameが返すのは"Microsoft Internet Explorer"か"Netscape"かの2つしかない(とほほによると)ので、それ以外の判定ができません。 ほかの方法などで判定できるのでしょうか?もしかしたら、むずかし~いソースになってしまいますか? JavaScriptを今少しかじっているところですが、ブラウザごとの仕様の違いに少しとまどっています。 IEとNNを比較して解説したサイトは多いのですが、FireFoxも考慮に入れたサイトはあまり見かけません。 もしありましたら紹介おねがいします。

  • Netscape navigator.appNam

    <html> <head> <title>test</title> </head> <script type ="text/javascript"> document.write("ブラウザ名:"+navigator.appName); </script> </body> </html> を実行すると 返り値がNetscapeになります。 IE11でもグーグルクロームでも同じ結果です。 なぜ、Netscapeなのでしょうか? IEやグーグルクロームが返ってくると思ってました。

  • なぜ「ページでエラーが発生しました。」?

    字数が限られているので、「なぜエラーなのですか?」 -----ここからhead区間 <!--JavaScript Function window.onerror = null; var ver4 = (navigator.appVersion.charAt(0) >= "4"); var NN4 = ver4 && (navigator.appName.charAt(0) == "N"); var IE4 = ver4 && (navigator.appName.charAt(0) == "M"); var NN3 = ((navigator.appVersion.charAt(0) == "3") && (navigator.appName.charAt(0) == "N")); if(NN3 || NN4 || IE4){ var img_b = new Array(); img_b[0] = new Image(); img_b[0].src = "kbw.jpg" img_b[1] = new Image(); img_b[1].src = "ao.jpg" img_b[2] = new Image(); img_b[2].src = "bcw.jpg" img_b[3] = new Image(); img_b[3].src = "sm.gif" } function B_in(nam,num){ if(NN3 || NN4 || IE4) document.images[nam].src = img_b[num].src; } function B_out(nam,num){ if(NN3 || NN4 || IE4) document.images[nam].src = img_b[num].src; return false; } // END ---> </SCRIPT> </head> -----ここからbody <BODY onLoad="time(0)"> <SCRIPT LANGUAGE="JavaScript"> <!--- ここから表示 document.write(TodayIMG(0)); //end ---> </SCRIPT>

専門家に質問してみよう