我似乎无法弄清楚Chrome调试工具。
我的Chrome版本为21.0.1180.60 m。
我采取的步骤:
- 我按ctrl-shift-i打开控制台。
- 单击“源”,然后选择我要调试的相关javascript文件。
- 通过在左侧行旁边的装订线中放置一个蓝色标签,在希望代码停止的位置设置断点。
- 我单击了网页(这是一个php呈现页面)上的按钮,该按钮启动了javascript代码。
- 代码成功运行,没有停止。
我还注意到,Watch Expressions也不起作用。它一直告诉我我要监视的变量未定义。
进一步的测试发现导致断点失败的是我的代码。似乎它在“ $(”#frmVerification“)。submit(function(){”行上失败。它没有进入该function()内部的断点。
以下是:
//function to check name and comment field
var test = "this is a test";
var test2 = "this is another test";
function validateLogin(){
//if(userEmail.attr("value") && userPass.attr("value"))
return true;
//else
//return false;
}
//onclick on different buttons, do different things.
function ajaxRequest(){
}
$(document).ready(function(){
//When form submitted
$("#frmVerification").submit(function(){
var username = $("#username");
var token = $("#token");
var action = $("#action");
var requester = $("#requester");
if(validateLogin()){
$.ajax({
type: "post",
url: "verification.php",
data: "username="+username.html()+"&token="+token.val()+"&action="+action.val()+"&requester="+requester.val(),
success: function(data) {
try{
var jsonObj = $.parseJSON(data); //convert data into json object, throws exception if data is not json compatible
if(jsonObj.length > 0){//if there is any error output all data
var htmUl = $('<ul></ul>');
$.each(jsonObj, function(){
htmUl.append('<li>' + this + '</li>');
});
$("#errOut").html(htmUl);
}else{
alert("Your account is now activated, thank you. If you have already logged in, press OK to go to the home page. If not, you must log in first.");
window.location.replace("home.php");
}
}
catch(e){//if error output error to errOut]
$("#errOut").html("PHP module returned non JSON object: <p>"+data+"</p>");
}
}
});
}
else alert("Please fill UserName & Password!");
return false;
});
});