2011-03-23 103 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