循环每个 jQuery 问题
Loop each jQuery Issue
我有这个代码:
var arrayInstSaude = new Array();
$("input[name='uniSaudePrj']:checked").each(function(){
arrayInstSaude[$(this).val()]=$(this).val();
});
出于某种原因,它给了我一个混乱的数组。示例:
- 如果我检查 1 个元素值 eq 1。它给了我数组InstSaude长度等于2。
- 如果我检查 2 个元素值 eq 2。它给了我数组InstSaude长度等于3。
- 如果我检查 3 个元素值 eq 5。它给了我数组InstSaude长度等于6。
- 如果我检查 4 个元素值 eq 6。它给了我数组InstSaude长度等于7。
- 如果我检查 5 个元素值 eq 7。它给了我数组InstSaude长度等于8。
如果我对 5 个元素这样做:
for (var i = 1; i <=arrayInstSaude.length; i++) {
alert(arrayInstSaude[i]);
}
我将有 1,2,未定义,未定义,5,6,7,未定义,而预期有 1,2,5,6,7。有人知道发生了什么事吗?谢谢!
数组始终是连续的。
长度只是最高索引加一。
听起来你想要一个碰巧有数字键(没有长度)的常规对象。
替换
for (var i = 1; i <=arrayInstSaude.length; i++) {
alert(arrayInstSaude[i]);
}
跟
for (var i in arrayInstSaude) {
alert(arrayInstSaude[i]);
}
考虑阅读Olliej的这个讨论。
我认为这段代码足以满足我的提议:
var arrayInstSaude = new Array();
var k=0;
$("input[name='uniSaudePrj']:checked").each(function(){
arrayInstSaude[k]=$(this).val();
k++;
});
重要的是要注意长度是最高索引加一。因此,要检索我们可以使用的元素
for(k=0;k<arrayInstSaude.length;k++){
alert(arrayInstSaude[k]);
}
因为我们知道最后一个元素都是空的。
相关文章:
- 神秘的ajax json请求问题jQuery
- 这个代码出了什么问题?(Jquery)
- 图片库问题jquery
- SetInterval 60秒倒计时问题jQuery
- 这行代码出了什么问题?(jQuery.parseJSON)
- onclick属性的引号过多的问题 - jQuery,HTML
- IE8 问题 - jQuery 调整页面大小时导航 html
- nivo滑块和光滑的轮播无法协同工作的问题 - jquery
- Google Charts - hAxis 上的数字/字符串问题(Jquery ajax JSON 数据)
- window.位置问题JQuery代码
- 延迟对象使用问题jQuery
- 文件订单加载问题-jquery
- ie7问题:jquery点击编辑不工作
- jquery.mouseenter()问题jquery.mouseleave()和子元素
- Webkit问题:jQuery没有定义
- 拖放问题jquery
- 检索按钮值问题Jquery
- 选择所有复选框问题(jQuery)
- 过滤逻辑问题jQuery
- 逻辑运算符OR问题:jQuery