2011-03-23 51 views
0

我創建了一個django應用程序。使用這個應用程序,用戶可以被創建或刪除。但是,當創建一個用戶,當我們離開字段1(員工ID字段)null它沒有得到提交,並拋出這個錯誤 - 無效文字爲int()與基10:''。所以我想單獨驗證該字段並提交該表單,僅當員工ID字段爲非null時才能解決我的問題。所以爲了做到這一點,我創建了一個JavaScript,並希望在提交之前調用js函數。僅當該字段非空時才需要提交該表單。警報框會提示輸入員工ID,但一旦我點擊確定提醒框,同樣的錯誤再次出現。可以有人幫我解決這個問題。我對Django和編程頗爲陌生。我會在這裏粘貼我的代碼。使用Django的Javascript驗證錯誤

Add New User to Employee List 
</h4><br><br><br> 
<form name="myForm" action="http://10.1.0.90:8080/createEmployee/" method="POST"> 
<br>Name: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="userName" style="color: black; background-color: #BDBDBD" /><br /><br> 
Designation:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<select name="designation" style="color: black; background-color: #BDBDBD" > 
<option value="Trainee" >Trainee</option> 
<option value="Software Engineer Trainee">Software Engineer Trainee</option> 
<option value="Software Engineer">Software Engineer</option> 
<option value="Senior Software Engineer">Senior Software Engineer</option> 
<option value="Project Manager">Project Manager</option> 
<option value="System Administrator">System Administrator</option> 
<option value="Tester">Tester</option> 
</select><br> 
<br> 
EmployeeID:<input id ="empid" type="text" name="employeeID" style="color: black; background-color: #BDBDBD" /><br><br> 
Contact Number: <input type="text" name="contactNumber" style="color: black; background-color: #BDBDBD" /><br><br> 
Project:&nbsp;&nbsp;&nbsp;<input type="text" name="project" style="color: black; background-color: #BDBDBD" /><br><br> 
Location:&nbsp;<input type="text" name="location" style="color: black; background-color: #BDBDBD" /><br><br> 
E-mail:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="email" style="color: black; background-color: #BDBDBD" /><br><br> 
Skills:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type="text" name="skills" style="color: black; background-color: #BDBDBD" /><br><br> 
Date Of Join:&nbsp;<input type="text" id="datepicker" name="dateOfJoin" style="color: black; background-color: #BDBDBD" /><br><br> 
<br><br> 
<input type="submit" value=" Submit " onclick="isEmpty()" /><br /> 
</form> 
<script type="text/javascript"> 
function isEmpty(){ 
    if ((document.myForm.EmployeeID.value.length==0)) 
     { 
      alert("Please Enter Employee ID"); 
        return true; 
     } 
    else 
     { 
     return false; 
     } 

} 

+1

嚴重的是,使用適當的CSS來分隔空間,而不是所有的'nbsp's。 – 2011-03-23 08:34:41

回答

2

錯誤: 「如果((」 兩個支架打開

--- UPDATE ---

首先,如果你得到一個錯誤有關轉換爲空或null這意味着你的代碼是錯誤的,通過在javascript中進行額外的驗證來解決它意味着你正在製作非常惡劣的解決方法,而不會自己修復錯誤 - 如果javascript失敗(例如瀏覽器中沒有啓用JavaScript),用戶仍然會獲得50倍錯誤。

因此,請修復您的表單以使該字段成爲必需。 IMO將EmployeeID定義爲表單中的非必填字段,然後您認爲該字段是必需的並嘗試使用它。

如果您將修復您的應用程序(後端)代碼,那麼您可以在前端添加驗證(javascript)。

附加表單驗證的正確方法是將其附加到「提交」表單處理程序。 如果此處理程序將返回「false」形式將不會提交。

+0

糾正that..again具有相同的錯誤 – 2011-03-23 08:53:26