如何将JQuery响应数据(Html.ActionLink)解码为Html表元素?

如何将JQuery响应数据(Html.ActionLink)解码为Html表元素?,jquery,model-view-controller,asp.net-ajax,Jquery,Model View Controller,Asp.net Ajax,在我的visual studio 2015 mvc web应用程序中,我需要创建(附加)成功的Ajax返回数据并将其附加到webgrid,但以下代码未编译,无法识别(编译)var html中的dataval(id=dataval.id)代码 有人知道如何使它工作吗?基本上,我需要用ajax调用返回的其他数据创建那些Html.ActionLink $.each(response, function (j, dataval) { var html='@Html.Raw(HttpUtility.H

在我的visual studio 2015 mvc web应用程序中,我需要创建(附加)成功的Ajax返回数据并将其附加到webgrid,但以下代码未编译,无法识别(编译)var html中的dataval(id=dataval.id)代码

有人知道如何使它工作吗?基本上,我需要用ajax调用返回的其他数据创建那些Html.ActionLink

$.each(response, function (j, dataval) {
  var html='@Html.Raw(HttpUtility.HtmlDecode(Html.ActionLink("Edit", "Edit", new { id = dataval.id }).ToHtmlString()))';
  html+='@Html.Raw(HttpUtility.HtmlDecode(Html.ActionLink("create", "Create", new { id = dataval.id }).ToHtmlString()))';
  html+='@Html.Raw(HttpUtility.HtmlDecode(Html.ActionLink("Invoice", "Invoice", new { id = dataval.id }).ToHtmlString()))';
  html+='@Html.Raw(HttpUtility.HtmlDecode(Html.ActionLink("Delete", "Delete", new { id = dataval.id }).ToHtmlString()))';

  $("#GridProductIndex").append('<tr><td>' + dataval.Prod_Name + '</td> + <td>' + dataval.Prod_Type + '</td> +<td>' + dataval.Prod_Status + '</td><td>' +
    html  + '</td></tr>'); 

});

这可能是一个问题,即在一个字符串中使用单引号,而该字符串是用单引号括起来的=>在
行中使用双引号。追加(…)
行经过一些调查和搜索后,以下是解决方案:

var html = '<a href="@Url.Action("Edit")?id='+ dataval.id + '">Edit</a>';
var html='';

从这里可以找到解决方案:

它不是append中的dataval,而是var html=xxx中的dataval,如下所示:var html='@html.Raw(HttpUtility.HtmlDecode(html.ActionLink(“编辑”,“编辑”,new{id=dataval.id}).ToHtmlString());//“dataval”未在其中的4行中编译。抱歉,我以为您在单引号字符串(
“$each…”@Html…“…”)中有未替换的单引号是否检查:?我也尝试过:var t1=dataval.id//在这里,可以确定的是,“datival”被正确编译,但是在var html='@html.Raw(HttpUtility.HtmlDecode(html.ActionLink(“编辑”,“编辑”,new{id=t1}).ToHtmlString())下面仍然无法识别“t1”//“t1”在这里不编译。请注意,
dataval
是Javascript函数的n参数
new{id=..}
是ASP codeHi iPirat,我刚刚查看了那篇文章,但我认为这与我的问题无关,这不是关于如何创建Html.ActionLink或如何通过ActionLink传递参数,这是关于如何将现有的Html.ActionLink从Ajax成功返回的数据转换为本机Html,并将其作为一行表数据附加到webgrid(Html表)
var html = '<a href="@Url.Action("Edit")?id='+ dataval.id + '">Edit</a>';