勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

配列をjQueryで取り扱う

      2014/07/03

やりたかった事は、

・テキストボックスが複数ある。そのページに送信するクエリによってテキストボックスの数が変わる。
・テキストボックスのnameはaaaみたいに配列で渡したい
・テキストボックスの中身をjQueryで取得したい

というもの。JSやjQueryで配列を取り扱うことが少ないので
忘れないようにメモ。

■サンプル
http://sample.taitan916.info/eq/

■ソース
<!DOCTYPE HTML>
<html lang="ja">
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
$(function(){
$('#result_button').click(function(){ //ボタンを押したらイベント
$('#result_id').html(''); //divのところを初期化
var i = 0;
var radio_array = new Array(); //配列を宣言

//radio_valueの数だけループ
$("[name='radio_value']").each(function() {

//radio_valueを順番にradio_arrayに代入していく
radio_array[i] = $("[name='radio_value']").eq(i).val();
i++;
});

//iが配列の数未満の場合にループ
for(i=0; i<radio_array.length; i++){

//divのところに書き込んでいく
$('#result_id').append(radio_array[i]+'<br>');
}
});
})
</script>
<title>配列をjQueryで取り扱う</title>
</head>
<body>
<h1>配列をjQueryで取り扱う</h1>
<form>
項目1:<input type="text" name="radio_value" value="中身1"><br />
項目2:<input type="text" name="radio_value" value="あああ2"><br />
項目3:<input type="text" name="radio_value
" value="テスト3"><br />
項目4:<input type="text" name="radio_value" value="テスト四"><br />
項目5:<input type="text" name="radio_value
" value="てすと5"><br />
<input type="button" value="result" id="result_button">
</form>
<div id="result_id"></div>
</body>
</html>

■使えそうなもの
append()
http://semooh.jp/jquery/api/manipulation/append/content/

コンテンツを追加できる。
.html('')とかで初期化というか空にしてから追加していくと
使いやすそう。

-------

eq()
http://semooh.jp/jquery/api/core/eq/position/

指定したポジションの要素を取り出す。
ソースだとradio_valueの位置をループで回して
1つずつ取り出して配列に入れていっている。

-------

each
http://semooh.jp/jquery/api/core/each/callback/

合致した要素だけループを回す? ということなんかな。
name=radio_valueの数だけループを回してる。

-------

以上。

 - jQuery

  関連記事

jquery_logo
jQueryで電話番号チェック

やりたかったことはjavascriptかjQueryで 電話番号のバリデート。 ...

jquery_logo
jQueryプラグインの作成

面白そうだったのでメモ。 ■参考サイト http://www.entacl.in ...

jquery_logo
jQueryでshow/hideよりaddClass/removeClassの方が速い

diaplay:none/blockする際に最近はshow()/hide()を ...

jquery_logo
Ajaxで画像のアップロード(jquery.upload)

業務中に画像の選択後、アップロードボタンを押して画像のアップ、 その後フォームの ...

jquery_logo
tableのヘッダーを残して表示(jquery-decapitate)

bootstrapはあまり使わないので切り離して使えるように したいところ。 ■ ...

jquery_logo
jQueryuiを用いてメールの入力補助(サジェスト)

autocompleteを用いた簡易なサジェストを見かけたのでメモ。 ■ソース ...

jquery_logo
POP広告をjQueryで再現する方法

サイト内のリンクをクリックすると、新しいタブもしくはウィンドウで開く広告をちょい ...

jquery_logo
jQueryで関数処理中にブラウザのブロック(intro.js)

Ajaxで処理を行っている間、他の処理を行わせたくなかった。 「now load ...

jquery_logo
スワイプ・フルスクリーン・サムネイル対応のjQuery画像ビューア

タブレット&スマホでの閲覧が想定されているページで、スワイプ・サムネイル・フルス ...

jquery_logo
jQuery2.0がリリース

リリースされたとのこと。 http://blog.jquery.com/2013 ...