Razor + JS Uncaught SyntaxError:无效或意外的令牌

时间:2016-09-16 08:00:06

标签: javascript asp.net razor

我有这段代码:

var tempPath = "@Path.GetTempPath()";
var blobURL = tempPath + "image.jpg";

我检查页面时出现此错误:

  

未捕获的SyntaxError:无效或意外的令牌

这一行有下划线:

var tempPath = "C:\Windows\TEMP\";

这可能是一个愚蠢的解决方案,但我似乎无法找到它。我希望我的blob-URL为C:\ Windows \ TEMP \ image.png,以便我可以像这样使用它:

<img src="C:\Windows\TEMP\image.png"/>

编辑: 我不想强调这个临时路径,因为我不知道它是否总是一样。

1 个答案:

答案 0 :(得分:1)

以下JavaScript无效:

&#13;
&#13;
SELECT DISTINCT(p.productID)

FROM products as p

INNER JOIN products_lang as l ON l.productID=p.productID AND l.lang='en'                   

WHERE    l.productName LIKE '%keyword%'
AND l.status =  '1' 

ORDER BY  p.price desc  
LIMIT 0,10 
&#13;
&#13;
&#13;

问题是应该在JS字符串中转义var tempPath = "C:\Windows\TEMP\"; // look at code highlighting console.log(tempPath); // and at the result of execution反斜杠 你需要以这种方式逃避反斜杠:

&#13;
&#13;
\
&#13;
&#13;
&#13;

为了使用Razor实现此目的,您可以执行以下操作:

var tempPath = "C:\\Windows\\TEMP\\";
console.log(tempPath);