select2-drop 和 select2-no-results 添加按钮后,如何在 Select2 中调用点击事件?
How to call click event in Select2 after add a button to select2-drop and select2-no-results?
我想为 select2 添加一个新按钮,即使用户无法获得他们的结果,但在我将此按钮附加到之后我无法使用 jquery 单击。
$('.city').select2({
formatNoMatches: function(term) {
return "<a href='{{route('addNewIterms')}}' class='btn btn-info btn-sm' id='add'> Add New Item </a>";
}
});
Another solution
$('.select2-drop ').append("<a href='{{route('addNewIterms')}}' class='btn btn-info btn-sm' id='add'> Add New Item </a>");
但是我无法调用点击事件,尽管我已尝试 jquery dom 如下所示的事件
$(document).on('click','.select2-drop,.select2-drop#add', function(){
console.log(this)
})
我认为 formatNoMatches
已从 Select2
中删除。
您必须使用以下语法:
$('#e1').select2({
formatNoMatches: function(term) {
return "<button class='btn btn-info btn-sm' id='add'>Add a new item</button>";
},
});
$('.select2-container').on('click', '#add', function() {
alert('New Item Here!');
})
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/3.0.0/select2.css" rel="stylesheet" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/2.1.0/select2.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<select multiple id="e1" style="width:300px">
<option value="AL">Alabama</option>
<option value="Am">Amalapuram</option>
<option value="An">Anakapalli</option>
<option value="Ak">Akkayapalem</option>
<option value="WY">Wyoming</option>
</select>
我想为 select2 添加一个新按钮,即使用户无法获得他们的结果,但在我将此按钮附加到之后我无法使用 jquery 单击。
$('.city').select2({
formatNoMatches: function(term) {
return "<a href='{{route('addNewIterms')}}' class='btn btn-info btn-sm' id='add'> Add New Item </a>";
}
});
Another solution
$('.select2-drop ').append("<a href='{{route('addNewIterms')}}' class='btn btn-info btn-sm' id='add'> Add New Item </a>");
但是我无法调用点击事件,尽管我已尝试 jquery dom 如下所示的事件
$(document).on('click','.select2-drop,.select2-drop#add', function(){
console.log(this)
})
我认为 formatNoMatches
已从 Select2
中删除。
您必须使用以下语法:
$('#e1').select2({
formatNoMatches: function(term) {
return "<button class='btn btn-info btn-sm' id='add'>Add a new item</button>";
},
});
$('.select2-container').on('click', '#add', function() {
alert('New Item Here!');
})
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/3.0.0/select2.css" rel="stylesheet" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/2.1.0/select2.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<select multiple id="e1" style="width:300px">
<option value="AL">Alabama</option>
<option value="Am">Amalapuram</option>
<option value="An">Anakapalli</option>
<option value="Ak">Akkayapalem</option>
<option value="WY">Wyoming</option>
</select>