尝试渲染页面,并在按钮单击时触发通知。我把它设置为现在只是做一个弹出窗口,因为它是高层的内部应用程序。
有问题的按钮是一个简单的剃刀语法html助手,带有onclick事件以返回确认对话框。但是,似乎我无法为此呈现项变量。
@Html.ActionLink("Delete", "Delete", new { id = item.Id },
new { @class = "btn btn-warning",
onclick = "return confirm('WARNING: Delete @item.Id?');" })
这无法呈现item.Id(周围foreach语句的输出,而是输出字符串文字“@ item.Id”
@Html.ActionLink("Delete", "Delete", new { id = item.Id },
new { @class = "btn btn-warning",
onclick = "return confirm('WARNING: Delete ' + item.Id + '?');" })
这会渲染变量,但由于它不是javascript变量,因此呈现为“Delete undefined?”
如何在传递到此对话框的javascript之外使用foreach中的变量,以使消息更具描述性。
答案 0 :(得分:2)
我能够使用string.Format
中的C#
来解决自己的问题。
@Html.ActionLink("Delete", "Delete", new { id = item.Id },
new { @class = "btn btn-warning",
onclick = string.Format("return confirm('WARNING: Delete {0}?');", item.Id) })
答案 1 :(得分:0)
您没有正确关闭字符串。请尝试以下方法:
onclick = "return confirm('WARNING: Delete " + item.Id + "?');"
您的错误是未定义javascript项item.Id
,因为您的js脚本中可能未定义item
。