我使用输入元素的多维集合,如下所示:
<input value="0" name="Base_fare[23][0]" onchange="javascript:basechanged(23,0)" type="text" id="Base_fare[23][0]" class="imputText2"/>
<input value="0" name="Base_fare[24][0]" onchange="javascript:basechanged(24,0)" type="text" id="Base_fare[24][0]" class="imputText2"/>
<input value="0" name="Base_fare[25][0]" onchange="javascript:basechanged(25,0)" type="text" id="Base_fare[25][0]" class="imputText2"/>
<input value="0" name="Base_fare[23][15]" onchange="javascript:basechanged(23,0)" type="text" id="Base_fare[23][15]" class="imputText2"/>
<input value="0" name="Base_fare[24][15]" onchange="javascript:basechanged(24,0)" type="text" id="Base_fare[24][15]" class="imputText2"/>
<input value="0" name="Base_fare[25][15]" onchange="javascript:basechanged(25,0)" type="text" id="Base_fare[25][15]" class="imputText2"/>
<input value="0" name="Base_fare[23][16]" onchange="javascript:basechanged(23,0)" type="text" id="Base_fare[23][16]" class="imputText2"/>
<input value="0" name="Base_fare[24][16]" onchange="javascript:basechanged(24,0)" type="text" id="Base_fare[24][16]" class="imputText2"/>
<input value="0" name="Base_fare[25][16]" onchange="javascript:basechanged(25,0)" type="text" id="Base_fare[25][16]" class="imputText2"/>我通过以下方式将值存储到数组:
var Base_fare = new Array(3);
Base_fare[23] = new Array(4);
Base_fare[23][0]=parseFloat(document.getElementById('Base_fare[23][0]').value);
Base_fare[23][15]=parseFloat(document.getElementById('Base_fare[23][15]').value);
Base_fare[23][16]=parseFloat(document.getElementById('Base_fare[23][16]').value);
Base_fare[23][17]=parseFloat(document.getElementById('Base_fare[23][17]').value);
Base_fare[24] = new Array(4);
Base_fare[24][0]=parseFloat(document.getElementById('Base_fare[24][0]').value);
Base_fare[24][15]=parseFloat(document.getElementById('Base_fare[24][15]').value);
Base_fare[24][16]=parseFloat(document.getElementById('Base_fare[24][16]').value);
Base_fare[24][17]=parseFloat(document.getElementById('Base_fare[24][17]').value);因为索引是用php for-each循环动态生成的,所以我必须使用$.each
$.each(Base_fare, function(key, value) {
alert(key);
}); 但它不是返回23 24,而是返回1,2,3,我需要验证这些结果
我想做的是像这样的求和运算
$.each(Base_fare, function(key, value) {
$.each(Base_fare[key], function(key2, value2) {
alert(key2 + ':' + value2);
});
}); 因此,我可以获取每个元素的值来操作它并验证字段,但它不起作用。
任何人能给我任何解决方案或替代解决方案。
发布于 2013-06-06 03:59:11
,但它不返回23 24,它返回1,2,3这样的值
jQuery的each()将使用for循环遍历数组,直到数组的length,就像这样:
// actual jQuery's each() code
var i = 0, isArray = isArraylike( obj );
...
if ( isArray ) {
for ( ; i < length; i++ ) { // <------------------------------------ HERE
value = callback.call( obj[ i ], i, obj[ i ] );
if ( value === false ) {
break;
}
}
} else {
...因此,没有办法像您所希望的那样在23和24索引上开始迭代。您的替代方案是在使用索引之前对其进行测试:
$.each(Base_fare, function(key, value) {
if (value !== undefined) alert(value);
}); https://stackoverflow.com/questions/16948550
复制相似问题