2012-10-26 59 views
1

我寫了一個簡單的javaScript函數來驗證所需的用戶名字段使用JS爲我的學習目的。無法在Chrome中設置斷點

我面臨兩個問題 -

  1. 在提交按鈕,onclick事件處理程序不調用 checkRequired方法,以及窗體回。
  2. 我無法在chrome調試器中設置斷點。
  3. 即使僅在代碼中使用調試器也不會將控件 調試器斷點。

TaskManager.js

function checkRequired() { 
    debugger; 
    var userName = document.getElementById("txtUserName"); 
    if (userName.length == 0) { 
     alert("username is required attribute"); 
     return false; 
    } 
    return true; 
} 

AddNewUser函數:

<html> 
<head> 
    <title>Add new User</title> 
    <style type="text/css" media="all"> 
     button { 
      width: 65px; 
     } 
    </style> 
    <script src="TaskManager.js" type="text/javascript"></script> 
</head> 
<body> 
    <form method="post" action="AddNewUser.html" style="width: 560px; height: 850px; margin-left: 10px; margin-top: 10px"> 
     <fieldset> 
      <legend>New User</legend> 
      <table> 
       <tr> 
        <td> 
         <label>User Name:</label></td> 
        <td> 
         <input type="text" id="txtUserName" name="User Name" maxlength="10" /></td> 
       </tr> 

       <tr> 
        <td> 
         <button id="btnSubmit" type="submit" onclick="checkRequired()">Add User</button> 
        </td> 
        <td> 
         <button id="btnCancel">Cancel</button> 
        </td> 
       </tr> 

      </table> 
     </fieldset> 

    </form> 

</body> 
</html> 

感謝您的幫助來解決問題。

+0

您是否檢查控制檯是否有錯誤? – gdoron

+0

是的,我在控制檯中看不到任何錯誤。 – Abhijeet

回答

2

如果未達到斷點,則該功能無法訪問,您應該在控制檯中出現錯誤。該功能是否在全球範圍內?

Here's your code,對此我做了一些修改讓它工作。您處理的所有結果 首先必須考慮:

<button id="btnSubmit" type="submit" onclick="javaScript:return checkRequired();"> 

然後,你必須覈對.value.length你想驗證文本框裏面:

var userName = document.getElementById("txtUserName"); 
if (userName.value.length === 0) {[...] 

無論如何,我會建議您儘可能使用不顯眼的方法,並直接在javascript代碼中綁定事件,而不是在標記中定義它:

var submitBtn = document.getElementById("btnSubmit"); 
submitBtn.onclick = function checkRequired() { 
    console.log('aho'); 
    var userName = document.getElementById("txtUserName"); 
[...] 
0

檢查腳本文件是否正在加載。在函數定義之外的文件頂部放置一個警報。

如果警報沒有顯示,請仔細檢查腳本文件的名稱。它是否與腳本標記中引用的相同?它在同一個目錄中嗎?