在迭代对象时我得到了错误, Object.each不是函数, 这是我的代码:
$("#print").click(function() {
$values = {};
$("[data-type=text]").each(function(i,e){
if($(e).val() !='') {
$values[$(e).attr('name')] = $(e).val();
}
});
console.log($values);
$values.each(function(i,e){
console.log(i.e);
});
});
此外,我也不能使用for循环,因为我不知道密钥。
答案 0 :(得分:1)
在您的代码中,$values
不是jQuery对象,.each()
将不起作用。
迭代jQuery对象,为每个匹配的元素执行一个函数。
您需要使用$.each()
代替:
$.each($values, function(k,v){
console.log(k + ": " + v);
});
通用迭代器函数,可用于无缝迭代对象和数组。具有length属性的数组和类似数组的对象(例如函数的参数对象)由数字索引迭代,从0到length-1。其他对象通过其命名属性进行迭代。
你也可以只发送一个Object(jQuery与否)到控制台:
console.log($values);