向javascript添加输入
我正面临这样的错误。“添加联系人”通常在我单击时添加输入,但在我单击“添加电话”时不起作用。 我只想添加哪个用户需要哪个输入,但它不会以任何方式添加 我对jquery有一些问题,但无事可做:) 我如何理解或纠正它向javascript添加输入,javascript,jquery,Javascript,Jquery,我正面临这样的错误。“添加联系人”通常在我单击时添加输入,但在我单击“添加电话”时不起作用。 我只想添加哪个用户需要哪个输入,但它不会以任何方式添加 我对jquery有一些问题,但无事可做:) 我如何理解或纠正它 <div id="menus"> <ul id="menu" class="menu"> <li> <div class="handle"></div&
<div id="menus">
<ul id="menu" class="menu">
<li>
<div class="handle"></div>
<div class="menu-item">
<a href="#" class="delete-menu">
<i class="fa fa-times"></i>
</a>
<div class="row">
<label class="col-sm-2 col-form-label">Kullanıcı Adı</label>
<div class="col-sm-7">
<div class="form-group bmd-form-group">
<input class="form-control" type="text" name="title[]" placeholder="Menü Adı">
</div>
</div>
</div>
</div>
<div class="sub-menu">
<ul class="menu"></ul>
<ul class="menu2"></ul>
</div>
<a href="#" class="btn add-contact" data-background-color="warning">Add Contant</a>
<a href="#" class="btn add-phone" data-background-color="warning">Add Phone</a>
</li>
</ul>
</div>
$(函数(){
$('.add contact')。在('click',函数(e)上{
var index=$(this.nexist('li').index();
$(this).prev('.sub-menu').find('.menu').append('\n'+
“\n”+
“\n”+
“\n”+
“KullanıcıAdı\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“ ”);
e、 预防默认值();
});
$('.add phone')。在('click',函数(e)上{
var index=$(this.nexist('li').index();
$(this).prev('.sub-menu').find('.menu').append('\n'+
“\n”+
“\n”+
“\n”+
“KullanıcıAdı\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“ ”);
e、 预防默认值();
});
});
问题在于您的$(此).prev('.sub-menu')
因为.prev()
只选择当前元素之前的元素,而不是所有元素,所以使用$(此).preval('.sub-menu:last')
或者您可以使用$(this).closest('li').find('.sub-menu')
$(函数(){
$('.add contact')。在('click',函数(e)上{
var index=$(this.nexist('li').index();
$(this).prev('.sub-menu').find('.menu').append('\n'+
“\n”+
“\n”+
“\n”+
“KullanıcıAdı\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“ ”);
e、 预防默认值();
});
$('.add phone')。在('click',函数(e)上{
var index=$(this.nexist('li').index();
$(this).prevAll('.sub-menu:last').find('.menu').append('\n'+
“\n”+
“\n”+
“\n”+
“KullanıcıAdı\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“\n”+
“ ”);
e、 预防默认值();
});
});代码>
如果这个解决了这个问题,请考虑把它解决,我不知道怎么做。它是在哪里制作的?@Mesut在我回答的左边,你应该看到一个复选标记,如果你点击它,它将被标记。
$(function () {
$('.add-contact').on('click', function (e) {
var index = $(this).closest('li').index();
$(this).prev('.sub-menu').find('.menu').append('<li>\n' +
' <div class="handle"></div><div class="menu-item">\n' +
' <a href="#" class="delete-menu">\n' +
' <i class="fa fa-times"></i>\n' +
' </a>\n' +
' <div class="row">\n' +
' <label class="col-sm-2 col-form-label">Kullanıcı Adı</label>\n' +
' <div class="col-sm-7">\n' +
' <div class="form-group bmd-form-group">\n' +
' <input class="form-control" type="text" name="sub_contact_' + index + '[]" placeholder="Menü Adı">\n' +
' </div>\n' +
' </div>\n' +
' </div>\n' +
' </div>\n' +
' </li>');
e.preventDefault();
});
$('.add-phone').on('click', function (e) {
var index = $(this).closest('li').index();
$(this).prev('.sub-menu').find('.menu').append('<li>\n' +
' <div class="handle"></div><div class="menu-item">\n' +
' <a href="#" class="delete-menu">\n' +
' <i class="fa fa-times"></i>\n' +
' </a>\n' +
' <div class="row">\n' +
' <label class="col-sm-2 col-form-label">Kullanıcı Adı</label>\n' +
' <div class="col-sm-7">\n' +
' <div class="form-group bmd-form-group">\n' +
' <input class="form-control" type="text" name="sub_contact_' + index + '[]" placeholder="Menü Adı">\n' +
' </div>\n' +
' </div>\n' +
' </div>\n' +
' </div>\n' +
' </li>');
e.preventDefault();
});
});