从Javascript函数调用Html Helper方法

时间:2012-06-08 23:04:05

标签: javascript razor jqgrid html-helper

我正在尝试调用一个自定义的Html帮助器方法,该方法是我从jqGrid函数编写的,用于返回格式化文本,在本例中是一个链接,用于单元格:

function formatGroupPlanEditLink(cellValue, options, rowObject) {
        //var cellHtml = "<a href='/Insurance/GroupPlanEdit/?id=" + rowObject[0] + "'>" + rowObject[1] + "</a>";
    var functionArgs = rowObject[1] + ',Url.Action("GroupPlan", "Insurance", new { id = ' + rowObject[0] + ' }),String.Format("Edit {0}", ' + rowObject[1] + '), listId,Url.Action("GroupPlanList", "Insurance"),false';
    var cellHtml = '@Html.DialogFormLink(' + functionArgs + ')';
    return cellHtml;
}

我遇到的问题是,在执行帮助程序之前,我无法连接整个字符串。因此浏览器正在尝试执行“@ Html.DialogFormLink(” - 这当然会导致错误。我想必须有更好的方法来解决这个问题。我真的希望仍能使用Html辅助方法,因为我在别处使用它,它可以很好地满足我的要求。

1 个答案:

答案 0 :(得分:0)

我对Razor并不熟悉,但@Html助手的引用看起来很可疑。

var cellHtml = '@ Html.DialogFormLink(' + functionArgs +')';

浏览器不执行@ Html.DialogFormLink;服务器评估它。我怀疑服务器正在将你的文字“@ Html.DialogFormLink”注入你的js。

相关问题