Trong ứng dụng của tôi, tôi sử dụng JQGrid để tải một số dữ liệu danh bạ và khi tôi chỉnh sửa/thêm mục, tôi chọn tên liên hệ từ cơ sở dữ liệu và sau đó cập nhật/thêm liên hệ.JQGrid: Làm cách nào để làm mới trình đơn thả xuống sau khi chỉnh sửa?
Vấn đề của tôi là, khi tôi nhấp vào nút gửi, tôi muốn làm mới trình đơn thả xuống và dữ liệu đã được nhập để loại bỏ khỏi danh sách thả xuống.
Mã của tôi:
cho colModel:
{ name: 'OwnerEmail', index: 'OwnerEmail', width: 200, align: "center", sortable: true, sorttype: 'text', editable: true, edittype: 'select', editrules: { required: true }, editoptions: { value: ownersList} },
tôi cư thả xuống trên một số hàng (khi tôi chọn một hàng, thả xuống sẽ được làm mới)
onSelectRow: function (id) {
var advOwners = $.ajax({
type: 'POST',
data: {},
url: 'MyWebService.asmx/GetOwners',
async: false,
error: function() {
alert('An error has occured retrieving Owners!');
}
}).responseXML;
var aux = advOwners.getElementsByTagName("string");
ownersList = "";
for (var i = 0; i < aux.length; i++) {
ownersList += aux[i].childNodes[0].nodeValue + ':' + aux[i].childNodes[0].nodeValue + '; ';
}
ownersList = ownersList.substring(0, ownersList.length - 2);
jQuery("#GridView").setColProp('OwnerEmail', { editoptions: { value: ownersList} });
}
Nhưng khi tôi nhập lại chỉnh sửa/thêm biểu mẫu, trình đơn thả xuống không được làm mới, nó có các mục đã được tải ở vị trí đầu tiên.
Bất kỳ trợ giúp nào?
Cảm ơn, Jeff
Tôi đã theo dõi ý kiến của bạn và thay đổi mã nhưng không bao giờ nhập phương thức web GetSelectData. –
@Jeff Norman: Nếu bạn có thể giúp tôi tải lên dự án demo mà tôi đã sử dụng để xác minh đề xuất của mình. – Oleg
Có, vui lòng Oleg –