我正在构建一个ASP.NET MVC3网站。我的.cshtml文件中有一些javascript:
<div>hello!</div>
<script type="text/javascript">
$(document).ready(function () { alert("ready!"); })
</script>
Google Chrome的内置调试器没有看到这个javascript片段,所以我无法调试它。
如何在Google Chrome的内置调试器中的此JavaScript代码段中设置断点?
答案 0 :(得分:1)
很奇怪,对我很有用:
Scripts
标签
您也可以考虑FireBug作为替代方案。
答案 1 :(得分:0)
在MVC3中,运行剃刀视图引擎,我的括号真的搞乱了视图的解析。
例如,如果你有:
@using(Html.BeginForm()){
<div>hello!</div>
<script type="text/javascript">
$(document).ready(function () { alert("ready!"); });
</script>
}
您可能会遇到脚本大括号的问题。尝试将其更改为:
@{ Html.BeginForm(); }
<div>hello!</div>
<script type="text/javascript">
$(document).ready(function () {
alert("ready!");
});
</script>
@{ Html.EndForm(); }
这可能是你的问题的答案,也可能不是,但我花了永远来弄清楚我的一些表格出了什么问题。我没有在其中嵌入脚本,但是条件逻辑的块会破坏我的一切。
修改强> 经过一番研究后,我发现了一个让我找到解决方案的问题:aspnet.codeplex.com/workitem/7551。
我的提交消息(来自我实际上无法访问的代码库)表明它可能是糟糕的标记。编写违规页面的开发人员喜欢使用大写标签,即使我们使用的是XHTML 1.1 doctype。他还有很多属性被有条件地编译和/或填充。例如:
<div class="something @myHelper(someFlag)"></div>
<div @{ isSomeFlag ? <text>class="asdf"</text> : "" }></div>
我的解决方案应该被视为临时修复。