我正在编写一个jQuery网格插件,我设计它使它独立于所使用的语言工作。以下是如何分配插件的基础知识:
$("#grid").grid({
enablePager: true,
dataPath: "Movement/GetGridPage",
columns: {
Edit: { title: "", cellCallback: editButtonCallBack, width:"16px" },
DocketNumber: { title: "Docket #" },
SiteName: { title: "Site" },
SiteAddress: { title: "Address" },
SiteRegion: { title: "Region" },
},
cssTable: "table",
cssAltRow: "altRow"
});
因为我想执行一些更高级的数据处理,而不仅仅是填充
<td>
通过一些文本,我添加了一个回调处理程序(
cellCallback
var dataItem = currentRow[columnName];
if (columnSetting.cellCallback) {
$td.html(columnSetting.cellCallback(dataItem));
}
else {
$td.html(dataItem);
}
我遇到的问题是,我的编辑列需要包含一些
ImageActionLink
ActionLink
). 我不想在控制器的JSON响应中返回HTML,因为这是不必要的开销。
function editButtonCallBack(data)
{
var link = '<%= Html.ImageActionLink("Movement", "Edit", new { id = "X" },
Url.Content("~/Content/Icons/Edit.png"), "Edit", null, null) %>';
return link.replace("X", data);
}
所以在每次回调中,我只是找到并替换
X
data
表示要编辑的ID的。
坏的
十
在里面。那我该怎么做呢?