我想只添加两行。我有以下代码的2个问题。
http://jsfiddle.net/5WwTB/14/这是DEMO
$('#addProfile').bind('click', function() {
if($('#container').find('#removeProfile').length < 2) {
var len = $('#container').find('#removeProfile').length;
//alert(len);
var index = len+1;
$('#container').append('<div> </div><div class ="form-group-inline"><label class="col-sm-2 control-label" >Profile Number</label><div class="col-sm-3"><input class="text-input form-control" type="text" name="profileNumber" id="profileNumber" /></div><label class="col-sm-2 control-label" >Amount</label><div class="col-sm-3"><input class="text-input form-control" type="text" name="amount" id="amount" /></div><div class="col-sm-2"><button type="button" id="removeProfile" class="btn btn-success">RemoveProfile</button></div></div>');
}else{
bootbox.alert("You cannot add more than two profiles!", function() {});
}
})
});
$('body').on('click', '#removeProfile', function() {
if($('#container').find('#removeProfile').length > 0) {
$(this).parent().remove();
}
})
我可以在我的工作区中添加记录,但相同的代码不适用于小提琴。我希望有人可以帮助我首先让它在小提琴中工作,然后看看我有的问题。谢谢!
答案 0 :(得分:0)
执行$('#container').find('#removeProfile').length
时,您将始终获得0或1,而不是更多
无论如何,您不能两次使用相同的ID。删除ID或使其唯一。 (http://msdn.microsoft.com/en-us/library/ie/ms534704(v=vs.85).aspx)。
相反,您可以使用.form-group-inline
来检查您拥有的数量。
所以:
if($('#container .form-group-inline').length < 2) { .... }
对于删除部分,您将向具有选择器name=removeProfile
的元素添加单击处理程序。你没有。相反:
$('body').on('click', '.form-group-inline .btn-success', function() {
if($('#container .form-group-inline').length > 0) {
$(this).parents('.form-group-inline').remove();
}
}
这应该有效。