Select 在jqgrid过滤器工具栏中填充选择
我试图用数据库中的值填充dropdownlist。我的.js文件中有以下代码:Select 在jqgrid过滤器工具栏中填充选择,select,jqgrid,Select,Jqgrid,我试图用数据库中的值填充dropdownlist。我的.js文件中有以下代码: function getDropdowndata() { var sHTML; var filter; var url = "dropdown.json"; jQuery.getJSON(url, function (dddata) { if (dddata.rows.length > 0) { sHTML = ""; for (x = 0; x < dddata.
function getDropdowndata() {
var sHTML;
var filter;
var url = "dropdown.json";
jQuery.getJSON(url, function (dddata) {
if (dddata.rows.length > 0) {
sHTML = "";
for (x = 0; x < dddata.rows.length; x++) {
sHTML += (dddata.rows[x].Type + ":" + dddata.rows[x].Type + ";");
}
filter = sHTML.substring(0, sHTML.length - 1);
}
});
return filter;
}
我在这段代码中遇到的问题是,函数执行得太早,因此dropdownlist不包含任何内容
我假设的原因是,如果我在返回之前在javascript函数中添加了一个警报,dropdownlist中就会充满这些值,并且一切看起来都正常
有什么建议吗?与使用JSON的自定义函数获取数据不同,您可能希望尝试使用动态选择字段的内置功能(请参阅文档:)。您所要做的就是指定一个url,在该url中生成select元素的代码
colModel:[
{name:'colName',
editable:true,
edittype:'select',
formatter:'select',
editoptions:{dataUrl:'/path/to/generated/html/select'}
]
然后您只需要确保/path/to/generated/html/select
为select元素返回所有正确的html代码
colModel:[
{name:'colName',
editable:true,
edittype:'select',
formatter:'select',
editoptions:{dataUrl:'/path/to/generated/html/select'}
]