如何从 Razor View 调用Javascript方法?
起初我尝试过
@if (TempData["myMessage"] != null)
{
@:displayMessage();
}
当呈现页面时,我在HTML页面上确实看到了“@:displayMessage();”。
因此,我尝试了。
@if (TempData["myMessage"] != null)
{
<script type="text/javascript">displayMessage();</script>
}
如果该html页面上存在displayMessage函数,则该方法有效。但是在我的情况下,displayMessage存在于单独的javascript文件中。 (该网页包含哪些内容)
最佳答案
当您呈现的页面的这一部分呈现时,将调用您尝试调用的JavaScript。您的displayMessage
函数当时是否加载,取决于您是从单独的js文件中加载它,还是引用它的脚本源是否在您尝试从其调用的当前脚本标签下,等等。可以将调用推迟到窗口加载完成,如下所示:
@if (TempData["myMessage"] != null)
{
<script type="text/javascript">
window.onload = function () {
displayMessage();
};
</script>
}