JavaScriptでチェックボックスの機能を追加する方法

このQ&Aのポイント
  • JavaScriptを使用して、チェックボックスに機能を追加する方法を教えてください。チェックを入れると全て新しいウィンドウで開き、チェックを入れない場合は同じウィンドウで表示されるようにしたいです。私はJavaScriptの知識がないので、具体的な記述パターンも教えていただけると助かります。
  • JavaScriptを使用して、チェックボックスに機能を追加してください。チェックを入れると全て新しいウィンドウで開き、チェックを入れない場合は同じウィンドウで表示されるようにしたいです。具体的なコードの記述パターンも教えていただけると助かります。
  • チェックボックスにJavaScriptの機能を追加してください。チェックを入れると新しいウィンドウで開き、チェックを入れない場合は同じウィンドウで表示されるようにしたいです。JavaScriptの具体的な記述方法も教えていただけると嬉しいです。
回答を見る
  • ベストアンサー

javascriptを教えてください。

チェックボックスを付けて、チェックを入れると全て新窓で開く(二枚窓目以降も全て新窓で開く)、チェックを入れない場合は全て同じ窓に上書き表示させるようにしたいです。(デフォルトはチェックが入っている状態にしたい) ※私はjavascriptの書き方は全くわかりません。後で記述パターンを見て機能を追加したりする予定です。 よろしくお願いします。 <form name="fm" action="void" onSubmit="return false;"> <table style="background-color: #e0e0e0"><tr><td> <input Type="text" name="k" size="60" maxlength="255" value="" onKeyPress="if(event.keyCode == 13) { search('google'); }"> <input Type="reset" value="Reset"> </td></tr><tr><td> <input Type="submit" value="Google" onClick="search('google');"> </td></tr></table> </form> <!-- ****Google --> <form name="f_google" method="GET" action="http://www.google.com/search" Accept-charset="Shift_JIS"> <input type="hidden" name="q" value=""><input type="hidden" name="ie" value="Shift_JIS"> <input type="hidden" name="oe" value="Shift_JIS"><input type="hidden" name="hl" value="ja"> <input type="hidden" name="lr" value="lang_ja"><input type="hidden" name="num" value="20"> </form> <script LANGUAGE="JavaScript" Type="text/javascript"> <!-- function seteuc(fx){ bkup=document.charset; document.charset="euc-jp"; display(fx); document.charset=bkup; } function setsjis(fx){ bkup=document.charset; document.charset="shift_jis"; display(fx); document.charset=bkup; } function display(formx) { swin=window.open("","category_root",""); formx.target="category_root"; formx.submit(); swin.focus(); } function sitetop(ur) { swin=window.open(ur,"category_root",""); swin.focus(); } function search(eng) { q=document.fm.k.value; if(eng=="google") { if(q=="") sitetop("http://www.google.co.jp/"); else { fw=document.f_google; fw.q.value=q; setsjis(fw); }} } //--> </script>

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

  • ベストアンサー
  • mam-mon
  • ベストアンサー率100% (2/2)
回答No.6

No.2のソース(からUniCodeを消したもの)を実行されたのですよね? 私の環境で試した場合、どれだけ複数ウィンドウが開いていても別窓が開きます。 formx.target = getTarget(); の後に formx.target="category_root"; が残っていたりしませんか? formx.target = "_blank"; は「新規のウィンドウで開く」という意味ですが、 formx.target="category_root"; では、「category_rootという名前の窓を開く」という意味になり、すでにcategory_rootウィンドウが開かれている場合は上書きされてしまいます。 ソースに問題ないのなら、環境の問題かもしれません。どのブラウザ、バージョンで確認されていますか? 念のため、私が試したパターンを書き出しておきますね。 OS:WinXP SP2 ブラウザ:IE6 SP2 1.IEを起動する。 2.適当にGoogleで検索する。(いくつかウィンドウを開く) 3.新しく開いたウィンドウで問題の検索ページを開く。 4.別窓チェックを入れた状態で検索ワード無し×2を実行する。 5.さらに検索ワードを入れて2回実行する。 4、5あわせて4回のスクリプト実行ですが、全て別の窓で検索結果(あるいはGoogleトップページ)が表示されました。

siawasena
質問者

お礼

私はIEは6、XPでSPバージョンはわからなかったのですが、アップデートしたりしてみると、うまく作動するようになりました。それまでは、やはり、チェックボックスの状態に関係なく上書き表示されたりしていました。 今、時間をかけてテストしてみましたが、軽快に動いています! 私の求めていた形が完成しました! 他の訪問者が使った場合に上記の不具合が出る不安はありますが、非常に満足しています。 数々のご協力、本当にありがとうございました!

その他の回答 (5)

  • mam-mon
  • ベストアンサー率100% (2/2)
回答No.5

どうなっているのでしょうね? こちらの環境(IE6とFireFox2)ではまったく問題なく動作します。 どこか単純な間違いがあるのではないでしょうか? 48行目というと if(eng=="google") { if(q=="") sitetop("http://www.google.co.jp/"); else { fw=document.f_google; fw.q.value=q; setsjis(fw); }} ですよね。間違いなく記述されていますか? もし間違いないようなら、エラーが出るソースをもう一度アップしてください。

siawasena
質問者

補足

すみません。​はちゃんと消したのですが、その後に空白が一つ入っていたのが原因でした^_^; 消すと正常に作動するようになったのですが… 今、複数ウィンドウを開いている状態で、 作成して頂いたスクリプトを実行(新窓チェックを入れて)開いたのですが、 複数開いているウィンドウの一枚に上書き表示されてしまいました。 この問題は、なんとしてでも解決したい問題です。 完全に新窓で開ける様にする事はできないのでしょうか? 今まで同様のスクリプトをいじってきましたが、このエラーは度々起こります。有名なメタサーチサイトでもこのようなエラーはよく起こります。 javascript的に解決しにくい問題なのでしょうか?

  • mam-mon
  • ベストアンサー率100% (2/2)
回答No.4

URLをコピペした時、空白のUniCodeが入ってしまったようです(汗) コード内の​を検索して消してください。

siawasena
質問者

補足

指摘された四箇所を消しましたが、48行68文字目が構文エラーになりました。どうなっているのでしょうか?

  • mam-mon
  • ベストアンサー率100% (2/2)
回答No.3

すみません、消す部分は swin=window.open("","category_root",""); swin.focus(); でした…(^^;)

siawasena
質問者

補足

ありがとうございます。 No2の回答をそのまま記載したところ48行目75文字目が構文エラーと出るのですが、どうすればよいでしょうか?

  • mam-mon
  • ベストアンサー率100% (2/2)
回答No.2

No.1です。 消した部分を具体的に示しますと、display関数内の formx.target="category_root"; formx.submit(); swin.focus(); の2文は消して良いと思います。 display関数、sitetop関数の修正は、前回書いたとおりです。 新しいgetTarget関数はどこに記述しても大丈夫です。一番最後にでも追加してください。 提示されたコードを修正した全文は↓のような感じです。 ------------------------------------------------ <form name="fm" action="void" onSubmit="return false;"> <table style="background-color: #e0e0e0"><tr><td> <input Type="text" name="k" size="60" maxlength="255" value="" onKeyPress="if(event.keyCode == 13) { search('google'); }"> <input Type="reset" value="Reset"> </td></tr><tr><td> <INPUT type="checkbox" id="chk_blank" checked> <input Type="submit" value="Google" onClick="search('google');"> </td></tr></table> </form> <!-- ****Google --> <form name="f_google" method="GET" action="​http://www.google.com/search"​ Accept-charset="Shift_JIS"> <input type="hidden" name="q" value=""><input type="hidden" name="ie" value="Shift_JIS"> <input type="hidden" name="oe" value="Shift_JIS"><input type="hidden" name="hl" value="ja"> <input type="hidden" name="lr" value="lang_ja"><input type="hidden" name="num" value="20"> </form> <script LANGUAGE="JavaScript" Type="text/javascript"> <!-- function seteuc(fx){ bkup=document.charset; document.charset="euc-jp"; display(fx); document.charset=bkup; } function setsjis(fx){ bkup=document.charset; document.charset="shift_jis"; display(fx); document.charset=bkup; } function display(formx) { formx.target = getTarget(); formx.submit(); } function sitetop(ur) { swin=window.open(ur,getTarget(),""); swin.focus(); } function search(eng) { q=document.fm.k.value; if(eng=="google") { if(q=="") sitetop("​http://www.google.co.jp/");​ else { fw=document.f_google; fw.q.value=q; setsjis(fw); }} } function getTarget(){ blankFlg = document.fm.chk_blank.checked; target = ""; if( blankFlg == true ){ // 別窓で開く target = "_blank"; } else{ // 同じ窓で開く target = "_top"; } return target; } //--> </script> ------------------------------------------------

siawasena
質問者

補足

ありがとうございます。 しかし、上記をそのまま記載したところ48行目75文字目が構文エラーになっていると出るのですが、どうすればよいでしょうか?

  • mam-mon
  • ベストアンサー率100% (2/2)
回答No.1

はじめまして。Google検索窓は設置したことがないので、参考程度に回答させていただきます。 例として、下記のようなチェックボックスだとします。 <INPUT type="checkbox" id="chk_blank" checked> JavaScriptのコードを見ると、display、sitetopという関数があります。 検索ワードが入力された場合と、何も入力されていない場合で処理を分けているようですね。 とはいえ、 ・チェックボックスのチェック状態を確認する。 ・飛び先を別窓か同じ窓に設定する。 という処理はどちらにも必要なので、新しく関数を作るのが良いかと。 ちなみに私はこんな感じで作りました。 --------------------------------------------------- function getTarget(){ blankFlg = document.fm.chk_blank.checked; target = ""; if( blankFlg == true ){ // 別窓で開く target = "_blank"; } else{ // 同じ窓で開く target = "_top"; } return target; } --------------------------------------------------- この関数をそれぞれの関数内で呼び出します。 --------------------------------------------------- function display(formx) { formx.target = getTarget(); formx.submit(); } --------------------------------------------------- --------------------------------------------------- function sitetop(ur) { swin=window.open(ur,getTarget(),""); swin.focus(); } --------------------------------------------------- ちなみにdisplay関数内のswin関係のコードは消してしまいました(^^;) ないほうが正しく動くようなので。

siawasena
質問者

補足

ご回答ありがとうございます。 どこを消して、新しく書いて頂いた関数を記述すればよいのでしょうか? よろしくお願いします。

関連するQ&A

  • javascriptに詳しい方、教えてください。

    表示すると表示した瞬間に、文字サイズが大ぐらいから中ぐらいに勝手に変わったり、ボタンの所にカーソルを持っていくと文字サイズが変化したり、バーに文字を入力すると、バーの位置が変わったりするのですが、どうなっているのでしょうか? javascriptは全くわからないので、 どこをどう変えればいいのか、わかりやすい回答をお願いします。 (質問投稿の際に​が勝手に挿入されたりしますので​が入ってた場合は注意をお願いします。) <form name="fm" action="void" onSubmit="return false;"> <table style="background-color: #e0e0e0"><tr><td> <input Type="text" name="k" size="60" maxlength="255" value="" onKeyPress="if(event.keyCode == 13) { search('google'); }"> <input Type="reset" value="Reset"> </td></tr><tr><td> <INPUT type="checkbox" id="chk_blank" checked> <input Type="submit" value="Google" onClick="search('google');"> <input Type="submit" value="Yahoo" onClick="search('yahoo');"> </td></tr></table> </form> <!-- ****Google --> <form name="f_google" method="GET" action="http://www.google.com/search" Accept-charset="Shift_JIS"> <input type="hidden" name="q" value=""><input type="hidden" name="ie" value="Shift_JIS"> <input type="hidden" name="oe" value="Shift_JIS"><input type="hidden" name="hl" value="ja"> <input type="hidden" name="lr" value="lang_ja"><input type="hidden" name="num" value="20"> </form> <!-- ****Yahoo! --> <form name="f_yahoo" method="GET" action="" Accept-charset="euc-jp"> <input type="hidden" name="p" value=""> <input type="hidden" name="ei" value="euc-jp"> </form> <script LANGUAGE="JavaScript" Type="text/javascript"> <!-- function seteuc(fx){ bkup=document.charset; document.charset="euc-jp"; display(fx); document.charset=bkup; } function setsjis(fx){ bkup=document.charset; document.charset="shift_jis"; display(fx); document.charset=bkup; } function display(formx) { formx.target = getTarget(); formx.submit(); } function sitetop(ur) { swin=window.open(ur,getTarget(),""); swin.focus(); } function search(eng) { q=document.fm.k.value; if(eng=="google") { if(q=="") sitetop("http://www.google.co.jp/"); else { fw=document.f_google; fw.q.value=q; setsjis(fw); }} if(eng=="yahoo") { if(q=="") sitetop("http://www.yahoo.co.jp/"); else { fw=document.f_yahoo; fw.p.value=q; fw.action="http://search.yahoo.co.jp/search"; seteuc(fw); }} } function getTarget(){ blankFlg = document.fm.chk_blank.checked; target = ""; if( blankFlg == true ){ // 別窓で開く target = "_blank"; } else{ // 同じ窓で開く target = "_top"; } return target; } //--> </script>

  • リンク先を新しい窓で開くには?

    javascript初心者です。 2回目以降、リンク先が一つのページ上に上書きされてしまいます。 リンク先を開くたび新しい窓で開きたいのですがどうしたらよいのでしょうか? target=_blankやwindow.openなどではないかと思いますが設置場所がよくわかりません。。 また、サンプルソースを見てもjavascriptの部分がいまいち理解できずにいます。 だいたいの流れやURLクリエの部分(HTMLの部分)はなんとなく理解できるのですが文字コードなど表示方法などのところがよくわかりません;; わかりやすくコメントを書いていただけると助かります! ソースはこちらです↓ ------------------------------------------------------------------------------ <body> <noscript>JavaScriptが無効です</noscript> <form name="fm" action="void" onSubmit="return false;"> <table style="background-color: #e0e0e0"><tr><td> <input Type="text" name="k" size="60" maxlength="255" value="" onKeyPress="if(event.keyCode == 13) { search('google'); }"> <input Type="reset" value="Reset"> </td></tr><tr><td> <input Type="submit" value="Google" onClick="search('google');"> <input Type="submit" value="Yahoo!" onClick="search('yahoo');"> </td></tr></table> </form> <!-- Google --> <form name="f_google" method="GET" action="http://www.google.com/search" Accept-charset="Shift_JIS"> <input type="hidden" name="q" value=""><input type="hidden" name="ie" value="Shift_JIS"> <input type="hidden" name="oe" value="Shift_JIS"><input type="hidden" name="hl" value="ja"> <input type="hidden" name="lr" value="lang_ja"><input type="hidden" name="num" value="20"> </form> <!-- Yahoo! --> <form name="f_yahoo" method="GET" action="http://search.yahoo.co.jp/search" Accept-charset="Shift_JIS"> <input type="hidden" name="ei" value="SJIS"> <input type="hidden" name="fr" value="sfp"> <input type="hidden" name="p" value=""> </form> <script LANGUAGE="JavaScript" Type="text/javascript"> <!-- function setutf(fx){ bkup=document.charset; document.charset="utf-8"; display(fx); document.charset=bkup; } function seteuc(fx){ bkup=document.charset; document.charset="euc-jp"; display(fx); document.charset=bkup; } function setsjis(fx){ bkup=document.charset; document.charset="shift_jis"; display(fx); document.charset=bkup; } function display(formx) { swin=window.open("","category_root",""); formx.target="category_root"; formx.submit(); swin.focus(); } function sitetop(ur) { swin=window.open(ur,"category_root",""); swin.focus(); } function search(eng) { q=document.fm.k.value; if(eng=="google") { if(q=="") sitetop("http://www.google.co.jp/"); else { fw=document.f_google; fw.q.value=q; setsjis(fw); }} if(eng=="yahoo") if(q=="") sitetop("http://www.yahoo.co.jp/"); else { { fw=document.f_yahoo; fw.p.value=q; setsjis(fw); }} } //--> </script> </body>

  • ボタンの文字サイズ+入力バーの位置が勝手に変わる

    下記のjavascriptを表示した際に、文字サイズが大ぐらいから中ぐらいに勝手に変わったり、ボタンの所にカーソルを持っていくと文字サイズが変化したり、バーに文字を入力すると、バーの位置が変わったりするのですが、どうなっているのでしょうか? 動かないようにしたいです。 javascriptは全くわからないので、 どこをどう変えればいいのか、わかりやすい回答をお願いします。 <form name="fm" action="void" onSubmit="return false;"> <table style="background-color: #e0e0e0"><tr><td> <input Type="text" name="k" size="60" maxlength="255" value="" onKeyPress="if(event.keyCode == 13) { search('google'); }"> <input Type="reset" value="Reset"> </td></tr><tr><td> <INPUT type="checkbox" id="chk_blank" checked> <input Type="submit" value="Google" onClick="search('google');"> <input Type="submit" value="Yahoo" onClick="search('yahoo');"> </td></tr></table> </form> <!-- ****Google --> <form name="f_google" method="GET" action="http://www.google.com/search" Accept-charset="Shift_JIS"> <input type="hidden" name="q" value=""><input type="hidden" name="ie" value="Shift_JIS"> <input type="hidden" name="oe" value="Shift_JIS"><input type="hidden" name="hl" value="ja"> <input type="hidden" name="lr" value="lang_ja"><input type="hidden" name="num" value="20"> </form> <!-- ****Yahoo! --> <form name="f_yahoo" method="GET" action="" Accept-charset="euc-jp"> <input type="hidden" name="p" value=""> <input type="hidden" name="ei" value="euc-jp"> </form> <script LANGUAGE="JavaScript" Type="text/javascript"> <!-- function seteuc(fx){ bkup=document.charset; document.charset="euc-jp"; display(fx); document.charset=bkup; } function setsjis(fx){ bkup=document.charset; document.charset="shift_jis"; display(fx); document.charset=bkup; } function display(formx) { formx.target = getTarget(); formx.submit(); } function sitetop(ur) { swin=window.open(ur,getTarget(),""); swin.focus(); } function search(eng) { q=document.fm.k.value; if(eng=="google") { if(q=="") sitetop("http://www.google.co.jp/"); else { fw=document.f_google; fw.q.value=q; setsjis(fw); }} if(eng=="yahoo") { if(q=="") sitetop("http://www.yahoo.co.jp/"); else { fw=document.f_yahoo; fw.p.value=q; fw.action="http://search.yahoo.co.jp/search"; seteuc(fw); }} } function getTarget(){ blankFlg = document.fm.chk_blank.checked; target = ""; if( blankFlg == true ){ // 別窓で開く target = "_blank"; } else{ // 同じ窓で開く target = "_top"; } return target; } //--> </script>

  • javascriptでログインページの作成

    JSPを作成しているのですが、javascirpt構文の方が 多いため、こちらで質問をさせて頂きます。 javascript, html で ログインページを作成しています。 <%@ page contentType="text/html;charset=Shift_JIS" %> <script type="text/javascript" language="javascript"><!--     function Submit(name,pass,f){  if(name == null){ document.getElementBy(f).action="http://www.yahoo.co.jp"; document.getElementById(f).submit(); }else{ document.getElementById(f).action="http://www.google.co.jp"; document.getElementById(f).submit(); } } //--></script> <form action="login.jsp" method="post" NAME="f1"> <table border="1" width="30%"> <tr> <td>ユーザーID:</td> <td><input type="text" name="admin" size="25" value=""></td> </tr> <tr> <td>パスワード:</td> <td><input type="password" password="password" value=""></td> </tr> </table> <%--- これが悪いのかも!? --- %> <% String name = request.getParameter("name"); String password= request.getParameter("password"); %> <input type="submit" value="ログイン" onClick="Submit('name','password','f1');"> </form> </body> </html> ログインボタンをクリックして、name,password,f1(formの名前)を function のSubmitに値を渡したいのですが、nullが渡されてしまいます。 テキストボックスで入力された値を渡したいのですが、 javascript,htmlの知識が乏しいため、どこがおかしいのかわかりません。 もしわかる方が居ましたら、よろしくお願いたします。

  • サイト内検索の設置

    ホームページにサイト内検索を設置しました。 ソフトは「google」です。ところがこれはドメイン単位になっているので、本当の意味でのサイト内ではありません。何か良い方法はないでしょうか? ちなみにプログラムは <!-- SiteSearch Google --> <center> <form method=get action="http://www.google.co.jp/search"> <table bgcolor="#FFFFFF"><tr valign=top><td> <a href="http://www.google.co.jp/"> <img src="http://www.google.com/logos/Logo_40wht.gif" border="0" alt="Google" align="absmiddle"></a> </td> <td> <input type=text name=q size=31 maxlength=255 value=""> <input type=hidden name=ie value=Shift_JIS> <input type=hidden name=oe value=Shift_JIS> <input type=hidden name=hl value="ja"> <input type=submit name=btnG value="Google 検索"> <font size=-1> <input type=hidden name=domains value="MySite.ne.jp"><br> <input type=radio name=sitesearch value=""> WWW を検索 <input type=radio name=sitesearch value="MySite.ne.jp" checked> My Siteを検索 </font> </td></tr></table> </form> </center> <!-- SiteSearch Google -->

  • javascriptによる計算

    テキストボックス「a1~6」の値とテキストボックス「b1~6」に入力された値を足し算してテキストボックス「c1~6」(例…c[i] = a[i] + b[i])を計算するJavaScriptを作成しているのですが、結果がundefinedになってしまい上手くいきません。どうやったら動くのかどうかご教授ください。 以下ソース↓ <script language ="JavaScript"> function plus() { var intResult = 0; for (i=1; i<=6; i++){ intResult[i] = 0; if (!isNaN(document.forms["A"].all["a"+i].value) && !isNaN(document.forms["B"].all["b"+i].value)){ intResult[i] += parseInt(document.forms["A"].all["a"+i].value); intResult[i] += parseInt(document.forms["B"].all["b"+i].value); } <table border = 1> <tr> <td> <table border = 1> <tr> <td> <form name="A"> <input type = "text" size = 5 name = "a1"></input> </td> <td> <input type = "text" size = 5 name = "a2"></input> </td> <td> <input type = "text" size = 5 name = "a3"></input> </td> </tr> <tr> <td> <input type = "text" size = 5 name = "a4"></input> </td> <td> <input type = "text" size = 5 name = "a5"></input> </td> <td> <input type = "text" size = 5 name = "a6"></input> </form> </td> </tr> </table> </td> <td> <table boeder = 1> <tr> <input type = "button" onClick="plus()" value = "+"></input> </tr> </table> </td> <td> <table border = 1> <tr> <td> <form name = "B"> <input type = "text" size = 5 name = "b1"></input> </td> <td> <input type = "text" size = 5 name = "b2"></input> </td> <td> <input type = "text" size = 5 name = "b3"></input> </td> </tr> <tr> <td> <input type = "text" size = 5 name = "b4"></input> </td> <td> <input type = "text" size = 5 name = "b5"></input> </td> <td> <input type = "text" size = 5 name = "b6"></input> </form> </td> </tr> </table> </td> </tr> </table> 答え <form name = "C"> <table border = 1> <tr> <td> <input type = "text" size = 5 name = "c1"></input> </td> <td> <input type = "text" size = 5 name = "c2"></input> </td> <td> <input type = "text" size = 5 name = "c3"></input> </td> </tr> <tr> <td> <input type = "text" size = 5 name = "c4"></input> </td> <td> <input type = "text" size = 5 name = "c5"></input> </td> <td> <input type = "text" size = 5 name = "c6"></input> </td> </tr> </table> </form> </body> document.C.all["c"+i].value = intResult[i]; } } </script>

  • jQuery 変数の使い方について

    jQuery 変数の使い方について 【やりたいこと】 ラジオボタンが複数ある為現在のアクションをまとめたい。 ■ $("input:radio[name='radio01']:checked").val(); の'radio01'の部分に変数を使いたい。 ■document.forms["MON"].hradio02.value の"MON"のフォーム名と、「hradio02」name部分に変数を使いたい。 http://kaicoo.blogspot.jp/2012/03/query_30.html 等を参考に元のソースから JSをまとめてみましたが、うまくいきません。 jQuery内の変数の記述方法を 教えていただけませんでしょうか? よろしくお願いいたします。 ★JSをまとめたサンプルソース <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <script src="jquery.js"></script> <script type="text/javascript" language="JavaScript"> <!-- function setVal(obj) { var formname = obj.form.name; var radioname = obj.getAttribute('name'); alert(formname); alert(radioname); //選択したラジオのvalueをhiddenに格納する document.forms[formname].h '+ radioname +' .value = $("input:radio[name='+ radioname +']:checked").val(); alert(document.forms[formname].h '+ radioname +'.value); } //--> </script> </head> <body> <table border="1"> <FORM name="MON"> <tr> <td> 結果: </td> <td> <input type="radio" name="radio01" value="良好" onClick="setVal(this);" >良好 <input type="radio" name="radio01" value="不良" onClick="setVal(this);"> 不良 <input type="hidden" name="hradio01" value="未入力です。"> </td> </tr> <tr> <td> 結果2: </td> <td> <input type="radio" name="radio02" value="良好" onClick="setVal(this);" >良好 <input type="radio" name="radio02" value="不良" onClick="setVal(this);"> 不良 <input type="hidden" name="hradio02" value="未入力です。"> </td> </tr> </table> </Form> </body> </html> ★元のソースのサンプル <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> <META http-equiv="Content-Style-Type" content="text/css"> <script src="jquery.js"></script> <script type="text/javascript" language="JavaScript"> <!-- function setVal_01(obj) { document.forms["MON"].hradio01.value = $("input:radio[name='radio01']:checked").val(); alert(document.forms["MON"].hradio01.value); } //--> </script> <script type="text/javascript" language="JavaScript"> <!-- function setVal_02(obj) { document.forms["MON"].hradio02.value = $("input:radio[name='radio02']:checked").val(); alert(document.forms["MON"].hradio02.value); } //--> </script> </head> <body> <table border="1"> <FORM name="MON"> <tr><td> 結果: </td> <td><input type="radio" name="radio01" value="良好" onClick="setVal_01(this);" >良好 <input type="radio" name="radio01" value="不良" onClick="setVal_01(this);"> 不良 <input type="hidden" name="hradio01" value="未入力です。"> </td> </tr> <tr> <td> 結果2: </td> <td> <input type="radio" name="radio02" value="良好" onClick="setVal_02(this);" >良好 <input type="radio" name="radio02" value="不良" onClick="setVal_02(this);"> 不良 <input type="hidden" name="hradio02" value="未入力です。"> </td> </tr> </table> </Form> </body> </html>

  • javascriptが得意な方ご教授ください。for文関連です。

    以下のソースにて?の部分を配列番号と同等にしたいのですが、うまくいきません。 やりたいことは配列のEbox_Div[0]~[3]の中にnullが入った場合その配列番号に対応するテキストボックスのEmail0~3には"空"と代入したいのです。 ※hiddenタグのEmail_hの値はTBLの状態によって異なります。 <script language="javascript"> function bunkatsu(){ var Ebox_Div = new Array(); Ebox_Div = document.myform.Email_h.value.split(","); document.myform.Email0.value = Ebox_Div[0]; document.myform.Email1.value = Ebox_Div[1]; document.myform.Email2.value = Ebox_Div[2]; document.myform.Email3.value = Ebox_Div[3]; for (i=0; i<4; i++){ if(Ebox_Div[i] == null){ document.myform.Email?.value = "空"; } } } </script> <body bgcolor="white" onLoad="bunkatsu()"> <form name="myform"> <input type="hidden" name="Email_h" value="aho,baka"> <table border="0" width="100%"> <tr><td width="10%">アドレス1</td><td width="90%"><input type="text" name="Email0" size="60"></td></tr> <tr><td width="10%">アドレス2</td><td width="90%"><input type="text" name="Email1" size="60"></td></tr> <tr><td width="10%">アドレス3</td><td width="90%"><input type="text" name="Email2" size="60"></td></tr> <tr><td width="10%">アドレス4</td><td width="90%"><input type="text" name="Email3" size="60"></td></tr> </table> よろしくお願い致します。

  • JavaScriptのロジック?

    <HTML> <HEAD> <TITLE>JavaScript</TITLE> <SCRIPT type="text/javascript"> <!-- /* 同じ値を二重表示 */ function funDouble(){ alert( document.SampleForm.nameOne.value ); document.SampleForm.nameTwe.value = document.SampleForm.nameOne.value + document.SampleForm.nameOne.value; alert(document.SampleForm.nameTwe.value); } // --> </SCRIPT> </HEAD> <BODY> <form name="SampleForm" method="POST"> <table align="center"> <TR> <TD>OnClick機能 : <Input type="text" name="nameOne" value="Ok"><Input type="submit" value="押して!" onclick="funDouble()" ></TD> <TD>| 結果 => | </TD> <TD> OnChange後 同じ値を2重表示 ; <Input type="text" name="nameTwe" value="123456"></TD> </TR> </table> </form> </BODY> </HTML>

  • input type ボタン

    お世話になります。 inputtype ログインボタン・検索ボタンの事で、お尋ねいたします。 あちらこちらのサイトを参考にログインと検索ができるプログラムを 真似て作成いたしています。初めての事で内容も半分ぐらいしか理解出来ていないままのスタートです。 参考サイトのhtml部分・CSSソースを作りかけの自分のサイトに記載しますとログインボタンと検索ボタンのレイアウトが崩れて 表示されません。 何が原因なのか不明のままです!! お手数かけますが、ご指導お願い申しあげます。 下記に簡単にinputの部分だけソースを書きますので宜しくお願い いたします。 また別ページ(新規に)html<body>~<body>間に同じソースを 書きますと検索ボタンもログインボタンもきちっと表示されます。 中身のプログラムソースに入る前にレイアウトを先に手掛けたのですが 意気消沈しています。 他のCSSとかjavascriptかのソースと競合するのでしょうか? 解らない事ばかりです。 奇麗に表示ができれば幸いです。 宜しくお願い申し上げます。 googleサーチのinputです。 <div class="entry_search"> <form method="get" action="http://www.google.co.jp/search" target="_parent"> <table width="166" border="0" bgcolor="#ffffff"> <tbody> <tr> <td width="160" height="32" align="left" valign="top" nowrap="nowrap"><a href="http://www.google.co.jp" target="_blank"> <img src="imges/common/poweredby_google.gif" alt="Google" border="0" /></a> <br /> <input type="text"name="q" size="17" maxlength="255" value="" /> <input type=hidden name=ie value=Shift_JIS /> <input type=hidden name=oe value=Shift_JIS /> <input type="hidden" name="hl" value="ja" /> <input type="hidden" name="domains" value="#" /> <input type="submit" name="btnG" value="検索" /></td> </tr> <tr> <td nowrap="nowrap"><table> <tbody> <tr> <td ><input type="radio" name="sitesearch" value=" " /> <font color="#000000" size="-1">Web</font></td> <td><input type="radio" name="sitesearch" value="#" checked="checked" /> <font color="#000000" size="-2">サイト内</font></td> </tr> </tbody> </table> <input name="client" value="pub-5778690733142083" type="hidden" /> <input type=hidden name=ie value=Shift_JIS /> <input type=hidden name=oe value=Shift_JIS /> <input type=hidden name=hl value="ja" /> <input name="cof" value="GALT:GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:ffffff;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:1;" type="hidden" /> <input type="hidden" name="hl" value="ja" /></td> </tr> </tbody> </table> </form> こちらがログオンの一部です。 <div class="AA_approach_b"> <h4 class="AA_blockHead AA_loginHead">ログイン</h4> <form name="login" action="#" method="post"><input name="action" value="login" type="hidden"> <input name="#" value="4b96bbf140d2a3cb9821cc2cba76395e21feb0f5b9ab041b561f0a03fc15ef2a" type="hidden"><table class="bestfood_loginTable"> <tbody><tr> <th class="CC_th">E-mail</th> <td class="CC_td"><input name="loginEmailAddress" value="" type="text"></td> </tr> <tr> <th class="CC_th">password</th> <td class="CC_td"><input name="loginPassword" value="" type="password"></td> </tr> <tr> <td colspan="2" button type="class="CC_submit" value="submit"> <input value="ログイン" type="submit"> </button> </td> </tr> </tbody></table> <div class="AA_annotation"><a href="#">パスワードをお忘れの方</a></div> <input name="referer" value="block" type="hidden"> </form> 上記の他にCSSと手元にCGIソースがあります。 お手数ですが宜しくお願い申し上げます。 初めての事ですので表現や考えに間違いありますればご容赦を....!!

専門家に質問してみよう