我尝试使用datatable.js ajax创建表。 我从webmethod获取数据,但是,结果没有添加到表中。
JS方法
function getMyData() {
alert('d');
$.ajax({
type: "POST",
url: "AssignHistory.aspx/getModemAssign ",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: buildMyDatatable,
error:
function (msg) {
alert(msg.status + " " + msg.statusText);
}
});
function buildMyDatatable(result) {
var data = JSON.stringify(result.d);
$('#gvAssgin').dataTable({
retrieve: true,
JSON:data,
columns: [
{ data: "ModemId" },
{ data: "ModemName" }
]
});
}
}
HTML代码
<table id="gvAssgin">
<thead>
<tr>
<th>
Modem ID
</th>
<th>
Modem Name
</th>
</tr>
</thead>
等待回复
答案 0 :(得分:1)
JavaScript源数据的正确选项为data
。此外,不需要使用 @Override
public void notifyDataSetChanged() {
super.notifyDataSetChanged();
}
public SelectUserAdapter(List<SelectUser> selectUsers, Context context) {
_data = selectUsers;
_c = context;
updateResults(selectUsers);
}
public void updateResults(List<SelectUser> results) {
userList = results;//List<SelectUser> userList
notifyDataSetChanged();
}
再次生成JSON,只需将数组传递给jQuery DataTables。
请参阅下面的更正代码:
JSON.stringify(result.d)