我有一个 WebMethod,它使用一些初始值填充一个 JQuery DataTable。我有一个下拉列表,它调用 WebMethod 并尝试用不同的值填充它。我的问题是,如果 JSON 数据为空(或 ''),那么我会得到 JSON.parse: unexpected end of data。
现在,我可以使用检查对象的长度。if(msg.d.length !- '' { build the table} )
但是,如果长度为空(''),那么我永远不会进入构建表,因此不能显示没有数据/没有记录。
如何确保如果 JSON 字符串/对象为 null (''),DataTables 仍然显示 No Records found 等...?
$('#ddBICS').change(function (e) {
var val = $('#dd option:selected').text();
msgDateDetail(val);
});
function msgDateDetail(value) {
$.ajax({
type: "POST",
url: "Default.aspx/MsgDateDetail",
cache: false,
data: JSON.stringify({ searchValue: value }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
var data = JSON.parse(msg.d);
var asInitVals = new Array();
otblMsgDateDetail = $("#tblMsgDateDetail").dataTable({
"sDom": "<'row-fluid'<'span6'T><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
"oTableTools": {
"aButtons": [
"copy",
"print",
{
"sExtends": "collection",
"sButtonText": 'Save <span class="caret" />',
"aButtons": ["csv", "xls", "pdf"]
}
]
},
"aaData": data
})
}
});
}