Asp.net mvc 4 如何将Json数据中的值附加到mvc4中的Actionlink

Asp.net mvc 4 如何将Json数据中的值附加到mvc4中的Actionlink,asp.net-mvc-4,actionlink,razor-2,Asp.net Mvc 4,Actionlink,Razor 2,从Json获取的数据我用来作为行附加到表中。列的第一个数据需要采用链接格式。因此我使用了ActionLink。但是我得到了以下错误,因为“当前上下文中不存在名称'Transaction_No' 函数CreateGrid(结果){ $.ajaxSetup({ 缓存:false }); 对于(i=0;i

从Json获取的数据我用来作为行附加到表中。列的第一个数据需要采用链接格式。因此我使用了ActionLink。但是我得到了以下错误,因为“当前上下文中不存在名称'Transaction_No'

函数CreateGrid(结果){
$.ajaxSetup({
缓存:false
});
对于(i=0;i
您似乎完全混合了服务器端代码和客户端javascript。尝试修复此混乱:

function CreateGrid(result) {
    $.ajaxSetup({
        cache: false
    });

    for (i = 0; i < result.data.length; i++) {
        debugger;
        var chk_row = true;
        $('#tbl_RoleMenu tbody').empty().append('<tr id="tr-' + i + '"></tr>');
        var transactionNumber = result.data[i].Loan;

        $('#tr-' + i).append('<td id="tdLoan-' + i + '"><a href="@Url.Action("Create", "Portfolio")" class="openDialog" data-dialog-id="emailDialog">' + transactionNumber + '</a></td>');
        $('#tr-' + i).append('<td id="tdLoan-1' + i + '">' + result.data[i].Loan + '</td>');
    }   
}
函数CreateGrid(结果){
$.ajaxSetup({
缓存:false
});
对于(i=0;i

作为这种糟糕局面的替代方案,我建议您使用局部视图在服务器上创建此标记。我猜您是在对控制器操作执行AJAX请求(当前返回
JsonResult
)后调用此函数的。修改此控制器操作,以便不是返回JsonResult,而是返回PartialView,然后简单地将此新标记注入DOM。

Transaction\u No
括在双引号内,如“Transaction\u No”@dakait:如果我们使用双引号,则只打印文本而不是值。我希望获取此值(result.data[I].Loan.toString()),而不是仅显示transactionno,并且需要将操作链接附加到该值。
function CreateGrid(result) {
    $.ajaxSetup({
        cache: false
    });

    for (i = 0; i < result.data.length; i++) {
        debugger;
        var chk_row = true;
        $('#tbl_RoleMenu tbody').empty().append('<tr id="tr-' + i + '"></tr>');
        var transactionNumber = result.data[i].Loan;

        $('#tr-' + i).append('<td id="tdLoan-' + i + '"><a href="@Url.Action("Create", "Portfolio")" class="openDialog" data-dialog-id="emailDialog">' + transactionNumber + '</a></td>');
        $('#tr-' + i).append('<td id="tdLoan-1' + i + '">' + result.data[i].Loan + '</td>');
    }   
}