1

我正在编写一个 MVC 应用程序,在一个页面上,我需要动态地为所有元素提供一个 ID,因为表格的呈现方式以及数据如何传递给表格。当我运行它时,所有元素都被替换为 ,但是它正在删除标签之间的内容。有没有办法让它只替换起始标签而不触及其余部分,或者另一个 jQuery 函数来做到这一点?我的代码如下:

<script type="text/javascript" charset="utf-8">
$(document).ready(function () {
var oTable1 = $('#example1').dataTable({
    sScrollX: "100%",
    sScrollY: "200px",
    bFilter: false,
    bScrollCollapse: true,
    bPaginate: false,
    bScrollInfinite: true,
    iScollLoadGap: 10,
    oLanguage: {
        sZeroRecords: "There are no records that match your search criterion",
    }
}).makeEditable({ sUpdateURL: "/Home/UpdateData" });

});

</script>
<script type="text/javascript" charset="utf-8">
   $(document).ready(function () { var editChange = $('td').replaceWith('<td id = "@Html.ValueFor(x => x.name)" >'); });
</script>

任何帮助表示赞赏。

4

2 回答 2

1

我建议不要使用replaceWithmay 我建议使用另一个函数,该函数.attr()旨在替换元素的属性。

$('td').attr('id','@Html.ValueFor(x => x.name)');

Also, be careful because the ASP values will not be available once in the client side. Your selector $('td') is pretty general, and IDS must be unique.

于 2013-04-07T23:31:40.457 回答
0

尝试在 TD 元素上显式设置 id

$('td').each(function() { 
   this.id = @Html.ValueFor(x => x.name);
});
于 2013-04-07T23:25:29.863 回答