2012-11-26 101 views
0

我有一個簡單的表單來接受用戶輸入。用戶必須填寫該表格中的很多字段。如果他們不這樣做,javascript會提供警報消息,但它不起作用。如果我將表單提交爲空,我沒有收到警報消息。這是我的form.html:簡單的JavaScript表單驗證在Django中不起作用?

</style> 
<script type="text/javascript"> 
function Validate(){ 
    if(document.simple_form.session.value == "" || 
    document.simple_form.hostname.value == "" || 
    document.simple_form.username.value == "" 
    document.simple_form.password.value == "") 
    { 
     alert("Please fill out all fields before clicking Load!"); 
     return false; 
    } 
} 
</script> 

</head> 


<body> 

    <form action="." method="post" onsubmit="return Validate();" name="simple_form"> 
    {% csrf_token %} 
     <fieldset> 
      <legend>Session</legend> 
       <label for="input-one" class="float"><strong>Session Name:</strong></label><br /> 
       <input class="inp-text" name="session" id="sess" type="text" size="30" /><br /> 

       <label for="input-two" class="float"><strong>RemoteHost:</strong></label><br /> 
       <input class="inp-text" name="hostname" id="host" type="text" size="30" onblur="if(this.value=='') { this.value='ngs.pradhi.com:/upload' }" onfocus="if(this.value=='ngs.pradhi.com:/upload') { this.value='' }" value="ngs.pradhi.com:/upload" /> 

       <label for="input-three" class="float"><strong>Username:</strong></label><br /> 
       <input class="inp-text" name="username" id="user" type="text" size="30" /> 

       <label for="input-four" class="float"><strong>Password:</strong></label><br /> 
       <input class="inp-text" name="password" id="pass" type="password" size="30" /> 
     </fieldset> 



    <p><input class="submit-button" type="submit" value="Load" /></p> 
     <p><input class="save-button" type="reset" name="cancel" value="Cancel" /></p> 
    </form> 

有什麼我失蹤?

+0

就像一個建議,使用'document.getElementById'比使用'document.form.element'表示法更容易 – Ian

回答

0

您在Validate()函數中缺少最後的||

我有一個工作jsfiddle here(我也加了幾個</br>的)。

+0

哦是的。謝謝艾丹! – sachitad