我使用 C# 函数 (File.aspx.cs) 从外部源获取一些值,并将此值用作数据表上的自定义属性。然而,我只得到 0,1,2 等作为 ID 值,而不是来自 C# dataID 变量的实际值,即使我已经var ID = '<%=dataID%>';在我的 JS 文件中使用(没有引号,我得到了错误(JS)表达式)。
如何在我的 dt.file.js 上获取此 dataID 值?
文件.aspx.cs
public partial class Example : System.Web.UI.Page
{
public static int dataID;
protected void Page_Load(object sender, EventArgs e)
{
}
[WebMethod]
[ScriptMethod(ResponseFormat = ResponseFormat.Json)]
public static DataTableResponse GetList(string parameters)
{
DataTableAjaxPostModel model = JsonConvert.DeserializeObject<DataTableAjaxPostModel>(parameters);
List<FieldAgentRow> list = new List<FieldAgentRow>();
XmlDocument doc = Utilities.FileToXmlDocument("data");
foreach (XmlNode person in doc.SelectNodes("//Personal"))
{
FieldAgentRow tmp = new FieldAgentRow();
//other codes
tmp.data_id = Int32.Parse(person.SelectSingleNode("ID").InnerText);
dataID = tmp.data_id;
list.Add(tmp);
}
DataTableResponse res = new DataTableResponse();
res.draw = model.draw;
res.data = list;
return res;
}
}
文件.js
$(document).ready(function () {
var ID = '<%=dataID%>';
var table = $('#list').DataTable({
"createdRow": function (row, data, ID ) {
$(row).attr('data-id', ID);
}
//other codes
});
更新解决方案: 感谢Paul 的回答,我能够通过修改我的 JS 代码来获取 data_id 值:
$(document).ready(function () {
var table = $('#list').DataTable({
"createdRow": function (row, data, dataindex) {
$(row).attr('data-id', data.data_id);
}
//other codes
});
斯蒂芬大帝
相关分类