こんにちは、javascriptで配列を作成したいです
var sortValues = array(
2 => array(3,4,5),
3 => array(5,6,7),
12 => array (7,4,5)
);
今、フォームのすべてのテキストボックスをループしています。すべてのテキストボックスには id2_3
があり、2 が配列のメイン インデックスになることを意味します。
私のhtmlマークアップは次のようになります
<input type="text" value="3" id="2_5" name="2_5">
<input type="text" value="4" id="2_5" name="2_6">
<input type="text" value="5" id="2_5" name="2_7">
<input type="text" value="5" id="3_1" name="3_1">
<input type="text" value="6" id="3_2" name="3_2">
..................................
次に、配列sortValues
に 2 が存在するかどうかを確認します。テキスト ボックスの値を取得し、この値が 2 に対して配列に存在するかどうかを確認します。値が存在しない場合は、値が既に存在するというアラートを出します。サブ配列に値をプッシュします。2 に対して 3 を配置する必要があることを意味します。2 に対して 3 が存在するかどうかを確認します。
2 (メイン インデックス) が存在しない場合は、配列などに新しいインデックスを作成します。私はこれまでに試しました
var sortvalues = new Array();
$(":text").each(function () {
if($(this).val() != '') {
id = $(this).attr('id');
ids = id.split("_");
parent = ids[0];
child = ids[1];
if(typeof sortvalues[parent] !== 'undefined') {
if(typeof sortvalues[parent][$(this).val()] !== 'undefined') {
alert("Value already exists");
} else {
sortvalues[parent][] = $(this).val();
}
} else {
sortvalues.push(parent);
}
}
});
console.log(sortValues);
どちら["2", "2", "2"]
が間違っているかを示します。上記の基準で上記の配列をどのように達成できますか??/