当初始化带有Switchery的复选框时,我会出错。请注意,复选框已使用AJAX请求加载。
未定义的TypeError:无法读取未定义的Switchery.isDisabled (switchery.min.js:1)在HTMLInputElement的新开关(switchery.min.js:1)的属性“禁用”。(:3:25) Function.each (jquery.min.js:2) at n.fn.init.each (jquery.min.js:2) :1:27
AJAX
$.ajax({
url: '/admin/item/editReviewAndFinalSettings/{{ $item->id }}',
type: "POST",
data: {
'type':'{{ucfirst($_GET['type'])}}',
'item_group_id':'{{ $item->id }}',
'priceType[]':priceType,
'optionName[]':optionName,
'serviceName[]':serviceName,
'itemCodes[]':itemCodes,
'partnerCodesStock[]':partnerCodesStock,
'itemStockId[]':itemStockId,
},
success: function(response) {
$(".finalReviewStockContainer").html(response);
$(".new-switchery-stock").each(function(k,v) {
var elems = document.querySelector('.new-switchery-stock'+k);
var switchery = new Switchery(elems[0]);
});
},
fail: function() {
console.log("Error occurred while fetching review and final settings.");
}
});发布于 2018-10-26 07:15:21
对于ajax成功响应后的解决方案,请如下所示
$(document).find(".new-switchery-stock").each(function(k,v) {
var elems = $(document).find('.new-switchery-stock'+k);
var switchery = new Switchery(elems[0]);
});然后测试它是否有效。
发布于 2018-10-26 05:56:07
也许您应该使用$(Document).ready(函数(){ /*您的东西在这里*/ });
发布于 2018-10-26 10:47:12
在使用Switchery函数初始化每个输入复选框之前,给它们分配一个唯一的HTML id属性,解决了我的问题。
https://stackoverflow.com/questions/53002200
复制相似问题