我已经使用datatables.editable和Jeditable实现了一个jquery Datatable。我可以使用文本区域作为可编辑字段,但我在设置Select作为可编辑时遇到问题。jeditable:使用选择时出现错误
我有下面的代码初始化编辑:
oTable.makeEditable({
sUpdateURL: "../ReconService.asmx/UpdateUser",
"aoColumns": [
null,
null,
{
indicator: 'Updating user...",
tooltip: "Change user",
type: "select",
submit: "Save",
data: getUserFilterOptions()
}
]
});
然后我有一个JavaScript/jQuery的功能,从DB获得用户的列表。在这个函数中,我尝试了很多不同的东西。因为它现在手动站的功能可以将字符串在网站上指定的格式jeditable
我所拥有的功能如下:
function getUserFilterOptions() {
$.ajax({
type:"POST",
contentType: "application/json; charset=utf-8",
url: "../ReconService.asmx/GetUsers",
dataType: "json",
success: function(result){
var userResult = result.d;
if (userResult.length > 0){
var text = "{'Select':'Select',";
$.each(userResult, function(index, val) {
text += "'";
text += val["value"];
text += "':'";
text += val["value"];
text += "'";
text += ",";
});
text += "'selected:'Select'}";
return text;
}
},
});
}
我已经使用Chrome的开发者工具来浏览功能该函数返回以下字符串:
“{'Select':'Select','Administrator':'Administrator','User1':'User 1','selected':'Select'}”
format是正确的,据我所知,但当我点击可编辑表格单元格时,我得到一个错误:
Uncaught SyntaxError: Unexpected end of input jquery.jeditable.mini.js:34 $.editable.types.select.content jquery.jeditable.mini.js:34 $.fn.editable.each.reset.self.editing jquery.jeditable.mini.js:18 jQuery.event.dispatch jquery-1.8.3.js:3058 jQuery.event.add.elemData.handle.eventHandle jquery-1.8.3.js:2676
令人困惑的是,如果我复制该字符串值并将其直接放入可调整的数据参数中,它可以正常工作。我甚至创建了一个函数来返回这个文字字符串,它工作正常。
实施例,如下所示取代函数的内容:
function getUserFilterOptions(){
return "{'Select':'Select','Administrator':'Administrator','User1':'User 1','selected':'Select'}"
}
这工作得很好。
我不是一个JavaScript专家,所以任何帮助,非常感谢。