未捕获的语法错误:)在asp.net mvc应用程序javascript中的参数列表后丢失

时间:2016-01-21 06:26:07

标签: javascript asp.net-mvc onclick uncaught-typeerror

我已经研究了为什么我们在参数列表“错误之后得到”未捕获的语法错误:),并且在阅读了关于堆栈溢出的几个答案之后我完全通过了我的代码。我已经在这一天超过一天,但错误仍然存​​在。请帮忙。

我的代码

function openinnewtab(filename) {
    var url = @Url.Action("DisplayDocuments", new { Filename = filename });
    var redirectWindow = window.open(url, '_blank');
    redirectWindow.location.reload(true);
    return false;
}

我在我的视图中调用它,基本上是为了在图像上实现onclick功能,以便在单击图像时,它会打开一个新窗口并显示图像。

<a onclick="openinnewtab(@filename);"><img title="@filename" src="~/Content/images/image.png"></a>

1 个答案:

答案 0 :(得分:1)

基本上你遗漏了一些single quotes,而且你在JS代码中混合了Razor个变量,你的代码应该是 -

<a onclick="openinnewtab('@filename');"><img title="@filename" src="~/Content/images/image.png"></a>

并且

   function openinnewtab(filename) {
     var url = '@Url.Action("DisplayDocuments", new { Filename = "tempFileName" })';

     // Replace templFileName with actual value which is being passed to this function
     url = url.replace("tempFileName", filename);
     var redirectWindow = window.open(url, '_blank');
     redirectWindow.location.reload(true);
     return false;
 }