アフィリエイト広告を利用しています

2021年05月09日

オブジェクト名の一部(要素)を変数にする

やりたいこと

フォーム内にチェックボックスが約20個あり、その値をチェックしたい。
幸いなことにチェックボックスはすべてYes、Noを選択するものばかり。
チェックボックスの値は以下のコマンドで取得できる。fieldName部分を変数に置き換えたい。


var yesNo = $('input[name="fieldName"]:checked').val();


行ったこと

まず、チェックボックス名を配列にしてループさせた。

 var arr = ['ch1yesno','bd_2yesno',ch3yesno',ch4yesno','ch5yesno','ch6yesno','ch7yesno',‥‥ ];
  $.each(arr, function(index, value) {
  ・
  ・
 })


次が本題で、オブジェクト名の一部を変数に置き換えた。
文字列の連結と同じで、+ を使用した。


 var yesNo = $('input[name="' + value + '"]:checked').val();


ラジオボタンがYes、Noのいずれであれ、選択されているかどうかをチェックしたかったので、


 if (yesNo=="Yes" || yesNo=="No") {
  ・
  ・
 }

とした。

まとめ


 var arr = ['ch1yesno','bd_2yesno',ch3yesno',ch4yesno','ch5yesno','ch6yesno','ch7yesno',‥‥ ];
 $.each(arr, function(index, value) {
  var yesNo = $('input[name="' + value + '"]:checked').val();
  if (yesNo=="Yes" || yesNo=="No") {
   ・
   return false; // ラジオボタンが一つでも選択されていたら値チェックを終了
  }
 })


オブジェクトの要素を変数に置き換える方法をWebで検索し、
成功するまでに3時間以上かかった。
同じことを繰り返さないために記事にしました。






posted by db-engineer at 00:00 | Comment(0) | Javascript

この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

検索
最新記事
カテゴリーアーカイブ
プロフィール
db-engineerさんの画像
db-engineer
プロフィール
タグクラウド