我想调试我的javascript代码,并能够在源选项卡下的所需位置成功放置断点.
但是,我遇到了一个问题,我想调试我的内联javascript代码.我们是否有任何chrome调试工具功能,我可以调试我的内联JavaScript代码.
我也可以使用Firebug进行调试.
PS:通过内联javascript代码,我的意思是在body标签内和同一个文件中的JS代码.
我正在尝试使用Chrome扩展程序控制调试程序.
我正在使用devtools-protocol和chrome扩展文档,但我不知道如何实现它们,因为我还没有看到任何使用方法的示例.我在这里使用了示例扩展,它展示了如何暂停和恢复调试器,但这对我来说绝对没用.我试图在示例中实现一些方法,但没有任何反应.
function onDebuggerEnabled(debuggeeId) {
chrome.debugger.sendCommand(debuggeeId, "Debugger.setBreakpointByUrl", {
lineNumber: 45825,
url: 'full https link to the js file from source tab'
});
}
Run Code Online (Sandbox Code Playgroud)
问题是我尝试调试的js文件是从sources选项卡里面的网站加载的,而且它很大,我们在格式化后说150k +行,加载需要一些时间.
现在任何人都可以告诉我如何从源代码中简单地在js文件中添加一个断点(USING CHROME EXTENSION),这样它就可以在动作上触发,然后停止调试器以便我可以更改值等等?
我是 javascript 新手,我正在尝试创建一个简单的表单验证。当我点击提交按钮时,什么也没有发生。我已经研究了一段时间的例子,我似乎无法弄清楚我哪里出错了。有什么建议:
在这篇文章之后,我将把它全部分解并开始更小。但与此同时,我认为另一组眼睛不会受伤,而且我很可能做错了什么。
HTML:
<form name="form" action="index.html" onsubmit="return construct();" method="post">
<label>Your Name:<span class="req">*</span> </label>
<input type="text" name="name" /><br />
<label>Company Name:<span class="req">*</span> </label>
<input type="text" name="companyName" /><br />
<label>Phone Number:</label>
<input type="text" name="phone" /><br />
<label>Email Address:<span class="req">*</span></label>
<input type="text" name="email" /><br />
<label>Best Time to be Contacted:</label>
<input type="text" name="TimeForContact" /><br />
<label>Availability for Presenting:</label>
<input type="text" name="aval" /><br />
<label>Message:</label>
<textarea name="message" ROWS="3" COLS="30"></textarea>
<label>First Time Presenting for AGC?:<span class="req">*</span></label>
<input type="radio" name="firstTime" value="Yes" id="yes" /><span class="small">Yes</span> …Run Code Online (Sandbox Code Playgroud) 我正在Visual Studio 2013中开发一个MVC Web应用程序,我已经能够浏览应用程序的调试会话并在chrome中点击F12来观看我的javascript.我打开调试窗口,单击Sources选项卡,然后进入我的Content/JS/Script.js文件并设置断点.
最近,我的断点从未被击中.似乎javascript被调用了,但它并没有停止.我注意到如果代码错误,我可以点击错误中的链接,Sources会显示一个名为VM895的文件或类似的东西,这似乎是我的Script.js文件的副本,除了没有我的断点.
除非我的javascript错误,否则我找不到打开该文件的方法.
任何人都可以向我解释为什么会这样吗?为什么不使用我在实际脚本文件中放置的断点,以及可能发生了什么变化?
据我所知,eval我的Javascript中没有使用任何地方.
这是我的MVC/Razor:
<div class="col-md-5">
@Html.DropDownListFor(model => model.SelectedRoleId,
ViewBag.ReviewRoles as SelectList,
new { @class = "form-control", onchange = "OnChangeAjaxAction.call(this, 'reviewRole');", id = "ddlReviewRole" })
</div>
Run Code Online (Sandbox Code Playgroud)
这是来自浏览器的渲染源:
<select
class="form-control" data-val="true"
data-val-number="The field SelectedRoleId must be a number."
data-val-required="The SelectedRoleId field is required."
id="ddlReviewRole"
name="SelectedRoleId"
onchange="OnChangeAjaxAction.call(this, 'reviewRole');">
<option value="14">Reviewer</option>
<option value="42">Erb Reviewer</option>
</select>
Run Code Online (Sandbox Code Playgroud)
这是Javascript:
OnChangeAjaxAction = function(e) {
var form = this.form;
//e.preventDefault(); //This prevents the regular form submit
var formData = new FormData($(form).get(0)); …Run Code Online (Sandbox Code Playgroud)