【发布时间】:2014-09-16 20:11:18
【问题描述】:
我正在根据用户输入动态更新一些元素。具体来说,我有一个用户可以填写的表单字段表。当页面加载时,我可以计算有多少是空的......
$(whocares).click(callback);
callback = function() {
var empties = $('.something input[value=""]);
var count = empties.length; //4
}
但是在用户填写新的之后,计数保持不变。
当我检查 DOM 时,我也看不到更新的值。新的表单字段仍然显示:value 而不是 value="whatever"。
所有的jQuery都在$(document).ready();里面
如何让 jQuery 看到新的变化?
【问题讨论】:
-
您必须每次都执行
$('.something input[value^=""]).length;才能获得计数。 -
@imtheman 我就是这样做的,在点击事件的回调中。
-
哦,我明白了。请改用
var empties = $('.something input[value=""]);。 -
@imtheman ...除非我误解了,你说我需要一行而不是两行,如我的问题所示。
-
不,抱歉。您需要从
input[value^=""]中删除^
标签: javascript jquery html forms input