use*_*008 3 html javascript jquery jquery-select2
Select2 函数在附加新的选择标记时不会打开,并且控制台出现此错误(未捕获的类型错误:$(...).select2 不是函数)。
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.2.1.min.js"> </script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.full.min.js'></script>
$(document).on('click', '#addNewItem', function() {
var a = $(".gh").val();
a++;
$('.asd').append('<select class="form-control select2" name="ProposalItemName[]">' +
'<optgroup label="Items">' +
'<option>test</option>' +
'<option>test</option>' +
'</optgroup>' +
'</select>');
$('.select2').select2();
});
Run Code Online (Sandbox Code Playgroud)
这里有一个解决方案https://jsfiddle.net/cx5m40wu/2/
$(document).on('click', '#addNewItem', function() {
var a = $(".gh").val();
a++;
$('.asd').append(`<select class="form-control select2" name="ProposalItemName[]">
<optgroup label="Items">
<option>test</option>
<option>test</option>
</optgroup>
</select>`);
$('.select2').select2();
});
Run Code Online (Sandbox Code Playgroud)
.alignRight{
float: right;
padding-left: 15px;
}Run Code Online (Sandbox Code Playgroud)
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.full.min.js"></script>
<div class="asd">
test
</div>
<button id="addNewItem" type="button">
Click
</button>Run Code Online (Sandbox Code Playgroud)
我相信您的代码中的问题是 2 jQuery。
JavaScript检查&文件的顺序CSS。
我使用了ES6标准(模板文字)
希望对你有帮助。
| 归档时间: |
|
| 查看次数: |
3888 次 |
| 最近记录: |