未终止的字符串常量使用innerHTML时出错

时间:2016-12-14 21:11:08

标签: asp.net-mvc razor

我正在尝试使用部分剃刀视图的内容在完整的剃刀视图中设置div的innerHTML:

@{
MvcHtmlString Bobo = @Html.Action("_TaskDetail_E", "ProTask");
};
detail_popup.innerHTML = @Bobo;

我在部分视图中尝试此代码,它为我提供了一个未终止的字符串常量错误:

 '<p>Task Name: @Html.DisplayFor(model => model.TaskName)</p>
 <p>Task Description: @Html.DisplayFor(model => model.TaskDesc)</p>'

当我在局部视图中使用以下代码时,它显示正常:

'<p>Task Name: @Html.DisplayFor(model => model.TaskName)</p>' +
'<p>Task Description: @Html.DisplayFor(model => model.TaskDesc)</p>'

如果我将所有代码放在一行中的单引号字符串中,它也能正常工作。我真正的局部视图是很多行,单行引用每一行,并在每一行的末尾添加一个'+'是非常难看的。有人能告诉我这是怎么做的吗?

1 个答案:

答案 0 :(得分:0)

您可以使用string literal, as found at this answer。例如:

@@"<p>Task Name: @Html.DisplayFor(model => model.TaskName)</p>
  <p>Task Description: @Html.DisplayFor(model => model.TaskDesc)</p>"