khi sử dụng multiselect Select2 và chọn một tùy chọn tôi nhận được thông báo lỗi này hiển thị:jquery Select2: Lỗi Loại: b.dataAdapter là null
TypeError: b.dataAdapter is null
Có ai biết điều này là thế nào?
Tính năng chọn nhiều hoạt động tốt, tôi chỉ tự hỏi về thông báo này.
EDIT:
Đây là html của tôi:
<div class="form-group">
<label class="control-label col-md-12" for="participant-id">Participant
<span class="required"> * </span>
</label>
<div class="col-md-12">
<input type="hidden" name="participant_id" value=""/>
<select name="participant_id[]" multiple="multiple" class="form-control select2me participantSelector" required="required" id="participant-id">
<option value=""></option>
</select>
</div>
</div>
đây là init jquery:
$(".select2me").select2({placeholder:"Select",width:"auto",allowClear:!0}))}
Các dữ liệu cho multiselect tôi nhận được nếu một giá trị được chọn trong danh sách thả xuống khác 'projectSelector':
$('.projectSelector').on('change', function() {
var targetProject_id = $('#project-id :selected').val();
updateParticpantDropdown(targetProject_id);
});
function updateParticpantDropdown(selectedProjectId){
$.ajax({
type: "POST",
url: '/xx/projects/xx/'+ selectedProjectId,
dataType : "json",
success: function (response, status) {
if (response.result == "success"){
var data = response.data;
$(".participantSelector").empty().select2({
placeholder: "Click here to select participants",
allowClear: false,
data: data
});
}
}
});
}
Dữ liệu được tải vào nhiều lựa chọn và mọi thứ hoạt động như mong đợi trên màn hình. Chỉ trong giao diện điều khiển tôi nhận được tin về lỗi của
TypeError: b.dataAdapter is null
này được phản ứng json của tôi (trong ngắn hạn):
{"result":"success","data":[{"id":18,"text":"xx, Ana Rosa"},{"id":17,"text":"xx, Saul"},{"id":14,"text":"xx, Jesus"},{"id":15,"text":"xx, Jose Sergio"
},{"id":13,"text":"xx, Guadalupe"},{"id":12,"text":"xx, Adolfo"},{"id":25
,"text":"xx, Roland"},{"id":16,"text":"xx, Mariela Elisa"},{"id":11,"text":"xx, Roberto Carlos "},{"id":19,"text":"xx, Jose Rafael"},{"id":2,"text":"xx, Juan Carlos"}]}
Trong Chrome tôi nhận được tin nhắn này:
select2.full.min.js:2
Uncaught TypeError: Cannot read property 'current' of null
at HTMLSelectElement.<anonymous> (select2.full.min.js:2)
at HTMLSelectElement.dispatch (jquery.min.js:3)
at HTMLSelectElement.r.handle (jquery.min.js:3)
at Object.trigger (jquery.min.js:3)
at HTMLSelectElement.<anonymous> (jquery.min.js:3)
at Function.each (jquery.min.js:2)
at n.fn.init.each (jquery.min.js:2)
at n.fn.init.trigger (jquery.min.js:3)
at d.select (select2.full.min.js:1)
at d.select (select2.full.min.js:2)
Vui lòng đăng html của bạn cho phần tử chọn và mã js bạn sử dụng để khởi tạo plugin select2. – andreivictor
Tôi đã tạo ra một fiddle, nhưng tôi đã không thể tái tạo vấn đề của bạn. Không có lỗi trong Chrome: https://jsfiddle.net/01zb15mq/. – andreivictor
Tôi nghĩ rằng tôi nhận được cùng một vấn đề khi tôi cố gắng cập nhật select2 của tôi với các thẻ khác nhau. Tôi đã kiểm tra điều này từ firefox và chrome. Cả hai erros ném: # chrome Version 56.0.2924.87 'của router Lỗi Loại: Không thể đọc thuộc 'hiện tại' của null' # firefox 51.0.1 ' Lỗi Loại: b.dataAdapter là null' Các jsfiddle có sẵn từ: https: // jsfiddle.net/PBrockmann/74v2gzhe/ – PBrockmann