勉強したことのメモ

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="https://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

  関連記事

複数のajax処理の結果をまとめて表示

同時にajax処理を行う際、挙動やコードの書き方に悩まされることが多い。例えばA ...

jQuery Alert Dialogsで表示後に処理したい

最近携わったサイトの中でJavaScript内に「jAlert」とかいう記述があ ...

AjaxFileUploadで処理は実行できてもエラーが返る

AjaxFileUploadでPHPに通信し、サーバー側のPHPで処理は正常に実 ...

クリップボードの操作

<? /* クリックでクリップボードにコピーする。 http://zxcv ...

Flashを用いずJavaScriptでコピー&カット機能を実装する

以前メモったようなFlashを用いる方法ではなく、WebAPIでコピー& ...

jQueryでjsonデータを処理(parseJSON)

他社が作成したシステムのちょっと改修案件があった。設置したもののどうも動かないと ...

スクロールしてもついてくる追尾型の広告を作る方法

スマホサイトとかでよく見る、スクロールしてもページ下部とかに常時表示されている追 ...

jQueryプラグインの作成

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

画像の登録フォームにてjQueryプラグインを用いてWebカメラの映像を撮影させる方法

form内の画像アップロード部分にて、通常であれば画像ファイルを参照させたものを ...

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

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