如何从 Razor View 调用 Javascript
How to call Javascript from Razor View
如何从 razor 视图调用 Javascript 方法?
一开始我试过
@if (TempData["myMessage"] != null)
{
@:displayMessage();
}
当页面呈现时,我确实看到了“@:displayMessage(); 在我的 HTML 页面上。
然后我尝试了。
@if (TempData["myMessage"] != null)
{
<script type="text/javascript">displayMessage();</script>
}
如果该 html 页面上存在 displayMessage 函数,则该方法有效。但是在我的例子中,displayMessage 存在于一个单独的 javascript 文件中。 (包含在此网页中)
您尝试调用的 JavaScript 将在呈现您正在呈现的页面的这一部分时被调用。您的 displayMessage
函数当时可能加载也可能不加载,具体取决于您是否从单独的 js 文件加载它,引用它的脚本源是否在您尝试从中调用它的当前脚本标记下方等。您可以推迟调用,直到 window 像这样加载:
@if (TempData["myMessage"] != null)
{
<script type="text/javascript">
window.onload = function () {
displayMessage();
};
</script>
}
如何从 razor 视图调用 Javascript 方法?
一开始我试过
@if (TempData["myMessage"] != null)
{
@:displayMessage();
}
当页面呈现时,我确实看到了“@:displayMessage(); 在我的 HTML 页面上。
然后我尝试了。
@if (TempData["myMessage"] != null)
{
<script type="text/javascript">displayMessage();</script>
}
如果该 html 页面上存在 displayMessage 函数,则该方法有效。但是在我的例子中,displayMessage 存在于一个单独的 javascript 文件中。 (包含在此网页中)
您尝试调用的 JavaScript 将在呈现您正在呈现的页面的这一部分时被调用。您的 displayMessage
函数当时可能加载也可能不加载,具体取决于您是否从单独的 js 文件加载它,引用它的脚本源是否在您尝试从中调用它的当前脚本标记下方等。您可以推迟调用,直到 window 像这样加载:
@if (TempData["myMessage"] != null)
{
<script type="text/javascript">
window.onload = function () {
displayMessage();
};
</script>
}