Javascript jQuery修改元素子级
我的引导列表在每个项目上都有一个“添加”按钮。单击add之后,我修改该项并将其添加到另一个列表组 但是如果我修改按钮元素,什么都不会发生。我不知道为什么,我尝试了很多方法,但都不管用 这是默认项:Javascript jQuery修改元素子级,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,我的引导列表在每个项目上都有一个“添加”按钮。单击add之后,我修改该项并将其添加到另一个列表组 但是如果我修改按钮元素,什么都不会发生。我不知道为什么,我尝试了很多方法,但都不管用 这是默认项: <div class="list-group-item" data-id="399"> <div class="input-group input-group-sm"> <span class="input-group-addon" style="wid
<div class="list-group-item" data-id="399">
<div class="input-group input-group-sm">
<span class="input-group-addon" style="width:100%">Item-Name</span>
<div class="input-group-btn">
<button type="button" class="btn btn-success item-add">+</button>
</div>
</div>
</div>
项目名称
+
这就是我想要的:
<div class="list-group-item" data-id="399">
<div class="input-group input-group-sm">
<span class="input-group-addon" style="width:100%">Item-Name</span>
<input class="form-control" placeholder=" Suchbegriffe" value="" style="min-width:150px;" type="text">
<div class="input-group-btn">
<button type="button" class="btn btn-success item-remove">x</button>
</div>
</div>
</div>
项目名称
x
“.item add”jQ函数:
var elem = $(this).parent().parent();
$(elem).children(':eq(last)').removeClass('btn-success').addClass('btn-danger');
$(elem).children(':eq(0)').after('<input type="text" class="form-control" placeholder=" Suchbegriffe" value="' + $('#parameters').val() + '" style="min-width:150px;">');
$(elem).children(':eq(0)').html($(elem).children(':eq(0)').html().substr(0, 15) + '...');
elem = $(elem).parent();
$('#item-list-search').append(elem);
var elem=$(this.parent().parent();
$(elem).children(':eq(last)').removeClass('btn-success').addClass('btn-danger');
$(elem).children(':eq(0)')。在('')之后;
$(elem).children(':eq(0)').html($(elem).children(':eq(0)').html().substr(0,15)+'…');
elem=$(elem.parent();
$(“#项目列表搜索”).append(elem);
如果我使用console.log($(elem.children)(':eq(last)')
它显示
元素,但没有任何更改
$(elem).children(':eq('+last+')').removeClass('btn-success').addClass('btn-danger');
last
是JavaScript变量。因此,它应该用字符串将其连接起来
$(elem).children(':eq('+last+')').removeClass('btn-success').addClass('btn-danger');
与此相反:
$(elem).children(':eq(last)').removeClass('btn-success').addClass('btn-danger');
因为你必须把它凝聚起来,使它看起来像一根绳子。因为最后一个是JavaScript。现在按钮将实际更改。我为您做了一个JSFIDLE,请参见此处 有了这个js:
$('.item-add').click(function() {
if (!($('#newitem').length > 0)) {
$('.item-add').parents('.input-group-btn').prepend('<input id="newitem" type="text" class="form-control" placeholder=" Suchbegriffe" value="' + $('#parameters').val() + '" style="min-width:150px;">');
$(this).removeClass('btn-success').addClass('btn-danger');
}
});
$('.item add')。单击(函数(){
如果(!($('#newitem')。长度>0)){
$('.item add').parents('.input group btn').prepend('');
$(this).removeClass('btn-success').addClass('btn-danger');
}
});