你好我想在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">
..................................
现在我想检查 2 是否存在于数组中sortValues
,我将获取文本框的值,并将检查该值是否存在于数组中以 2 为依据,然后如果值不存在,我将发出警报该值已经存在压入子数组中的值。意味着我需要将 3 放在 2 中,我将检查 3 是否存在于 2 中,如果是,则将警报放入数组中。
如果 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"]
哪个是错误的。任何人都可以指导我如何在上述标准中实现上述数组??/