たまーーーにあれどうやるんだっけ?ということがあるので、jQueryでよくあるフォーム操作についてまとめました。

テキストボックス

値を取得する

jQuery("input['name=target']").val();

セレクトボックス

singleとmultipleで微妙に違ってます。

選択している値を取得する(single)

jQuery("input['name=target'] option:selected").val()

option:selectedはなくてもOK

選択しているテキストを取得する(single)

jQuery("input['name=target'] option:selected").text()

こっちはoption:selectedがないと全部のテキストがとれてしまいます。

選択している値を取得する(multiple)

jQuery("input['name=target'] option:selected").each(function() {
     data.push(jQuery(this).val());
}

もしくは

jQuery("input['name=target']").val();

だけでも配列で取得できます。

選択しているテキストを取得する(multiple)

jQuery("input['name=target'] option:selected").each(function() {
    data.push(jQuery(this).text());
}

複数選択なのでループさせます。

選択させる

jQuery("input['name=target']").val("hogehoge")  //valueで指定
jQuery("select[name='target']").prop("selectedIndex", index)    //indexで指定

要素の追加

jQuery("input['name=target']").append(jQuery('<option value="1">test1</option>'));

普通にappendでoptionタグを追加します。

ラジオボタン

選択している値を取得

jQuery("input['name=target']:checked").val()

checkedが肝

チェックボックス

選択している値を取得

jQuery("input[name='target']:checked").each(function() {
    data.push(jQuery(this).val());
}

セレクトボックスみたいに自動で配列で取得してくれないのでループさせる必要があります。

チェックON / OFF(単体)

var checkflg = jQuery("#target").attr("checked");
if(checkflg) {
    jQuery("#target").attr("checked", false);
}else{
    jQuery("#target").attr("checked", true);
}

attrを使ってchecked属性の値を操作します。

チェックON / OFF(全部)

jQuery("input[name='target']").attr("checked", true);   //全チェック
jQuery("input[name='target']").attr("checked", false);  //全チェック外し

よくある「全てにチェック」をいれると全部のチェックをいれるやつです。

テキストボックス

jQuery("textarea[name='target']").text()

text()で値を操作できます。



blog comments powered by Disqus