【发布时间】:2014-10-24 08:23:59
【问题描述】:
我正在使用两个查询点击事件来动态添加和删除输入字段。这曾经完美地工作,现在突然不行了。实在找不到问题
这里是代码
<div>
<input type="image" id="btnAdd" src="~/Images/button_add.png" />
<input type="image" id="btnDel" src="~/Images/button_remove.png"/>
</div>
jQuery
$(document).ready(function () {
$aantal = 0;
$('#btnAdd').click(function () {
var num = $('.clonedInput').length;
var newNum = new Number(num + 1);
var newElem = $('#input' + num).clone().attr('id', 'input' + newNum);
newElem.children(':eq(0)').children(':eq(0)').attr('id', 'check' + newNum).attr('name', 'check' + newNum).attr('checked', false).val('');
newElem.children(':eq(0)').children(':eq(2)').attr('id', 'extra' + newNum).attr('name', 'extra' + newNum).css({ "background-color": "white" }).val('');
newElem.children(':eq(1)').children(':eq(0)').attr('id', 'checkVerplicht' + newNum).attr('name', 'checkVerplicht' + newNum).attr('checked', false).val('');
if (newNum <= 6) {
$('#input' + num).after(newElem);
$('#inputCheck' + num).after(newElemCheck);
}
$('#btnDel').attr('disabled', false);
$('#btnDel').show();
});
$('#btnDel').click(function () {
var num = $('.clonedInput').length;
var priceNum = $('.clonedInput').length;
$('#input' + num).remove();
$('#inputCheck' + num).remove();
$('#btnAdd').attr('disabled', false);
if (num - 1 == 1) {
$('#btnDel').attr('disabled', true);
$('#btnDel').hide();
}
});
$('#btnDel').attr('disabled', true);
$('#btnDel').hide();
});
btnAdd 工作正常,但 btnDel 不能。当我点击添加按钮时,应该会显示删除按钮,因此添加的字段也可以删除(直到只剩下1个字段,删除按钮再次隐藏)。这曾经工作正常,我不明白为什么它不再工作了。
【问题讨论】:
-
我在
$('#inputCheck' + num).after(newElemCheck);行收到Uncaught ReferenceError: newElemCheck is not defined。看看控制台。
标签: javascript jquery dynamic input