我在DOM中有三个输入元素:
while
在任何输入上的keyup事件中,我需要为所有空输入分配值0,但仅保留具有现有值的字段。到目前为止,这是我的JQuery:
<input type="input" id="triangle-base" />
<input type="input" id="triangle-height" />
<input type="input" id="triangle-area" />
运行时控制台显示此错误:
const baseInput = $('#triangle-base');
const heightInput = $('#triangle-height');
const areaInput = $('#triangle-area');
function ifEmpty () {
$("input").each(function(i) {
if (i.val("")){
$(this).val("0");
}
});
}
baseInput.keyup(function() {
ifEmpty();
});
heightInput.keyup(function() {
ifEmpty();
});
areaInput.keyup(function() {
ifEmpty();
});
我并不完全确定我是在正确的轨道上。谢谢大家的帮助!
答案 0 :(得分:0)
答案几乎在下面一行:i.val
应为$(this).val
。
i
是集合中当前项的索引。
答案 1 :(得分:0)
jQuery module-info.java
回调函数为$.each
。该项是DOM节点,而不是jQuery对象。此外,您的代码逻辑不正确。 (index, item)
将输入值设置为$(item).val("")
(null)。请参阅以下修复: