在我的应用程序中,我使用JQGrid加载一些联系人数据,当我编辑/添加条目时,我从数据库中选择联系人的姓名,然后更新/添加联系人。JQGrid:如何在编辑后刷新下拉菜单?
我的问题是,当我点击提交按钮时,我想刷新下拉列表和已经输入到下拉列表中的数据。
我的代码:
为colModel:
{ name: 'OwnerEmail', index: 'OwnerEmail', width: 200, align: "center", sortable: true, sorttype: 'text', editable: true, edittype: 'select', editrules: { required: true }, editoptions: { value: ownersList} },
我填充上选择行的下拉(当我选择一排,在下拉列表将被刷新)
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} });
}
但当我再次输入编辑/添加表单时,下拉菜单不会刷新,它具有首先加载的项目。
任何帮助?
感谢, 杰夫
我按照你的意见和改变了代码,但它从来没有进入GetSelectData web方法.. –
@Jeff Norman:如果你愿意,我可以上传一个我用来验证我的建议的演示项目。 – Oleg
是的,请奥列格 –