.aspx文件中JavaScript中的"%= foo%>"的"预期表达式"

Joe*_*sky 7 c# asp.net visual-studio-2008

我在.aspx文件中有这样的代码:

<script type="text/javascript" language="javascript">
function init()
{
     <%= x %>
}
Run Code Online (Sandbox Code Playgroud)

它工作正常(x是一个在运行时将绑定到某些JavaScript的字符串),但在编译时,我在<%=上得到一个"预期表达式"警告

我知道它不是世界上最好的代码,但是有各种历史代码可以向页面注入少量JavaScript.一切都完全无辜:)

Ric*_*kNZ 14

警告正在发生,因为代码块在JavaScript <script>块中; 编译器试图聪明地识别HTML /控件和JavaScript之间的区别.

虽然它有点难看,但你应该能够通过使用来消除警告 eval('<%= x %>')

您可能还会看一篇我使用ASP.NET创建动态JavaScript的文章:http://www.12titans.net/p/dynamic-javascript.aspx