你如何让 JavaScript 提醒 Razor 变量



我正在尝试创建一个表格标题,在单击时提醒其文本。我无法将 Razor 变量传递给 JavaScript 函数参数。什么是好的解决方法?

这是我的代码:

@foreach (var web in Model.Webinars)
{
    var title = web.Filename;
    if (!String.IsNullOrEmpty(title))
    {
        // If filename is too long, shorten it
        if (title.Length > 10)
        {
            title = title.Substring(0, 10) + "...";
        }
        // Create a header that alerts when clicked
        // Errors if I pass @title in alert()
        <th onclick="alert(@title)">@title</th>
    }
}

我收到如下所示的错误:

JavaScript critical error at line 71, column 34 in 
http://localhost:64023/Webinar/ReportsnnSCRIPT1010: Expected identifier

您需要用引号将@title括起来

<th onclick="alert('@title')">@title</th>

我认为@Satpal的答案是对的一半,您需要用引号括起来@title,例如

<th onclick="alert('@title')">@title</th>

但是您还需要将<th>包装在如下所示<table>元素中,否则它仍然不起作用。

<table>
    <th onclick="alert('@title')">@title</th>
</table>

最新更新