2015-02-10 22 views
3

我在驗證html中的3個字段是否爲空。java腳本無法正常工作,同時驗證php中的字段

代碼是

<input type="file" id="uploadImage" name="image" />file1: 
<input type="file" name="QRimage" id="File2" />file2: 
<label for="name">Student information:</label> 

<input type="checkbox" name="person" id="person" >Yes 

的javascript:

function validate() 
     { 
    var empt = document.forms["form1"]["image"].value; 
    var empt1 = document.forms["form1"]["QRimage"].value; 
    var empt2 = document.forms["form1"]["person"].value; 

    if (empt == "" && empt1 == "" && empt2 != "checked") 
     { 
     alert("Please input a Value"); 
     return false; 
     } 

問題:如果這些3個字段是空的,則其使警報消息( 「請輸入一個值」)。但如果勾選了複選框,則它會給出相同的消息而不是下一頁。我錯在哪裏?

+0

,你已經應用了'的validate()'?提供完整的表單(HTML)。 – 2015-02-10 11:12:23

+0

'empt2'的值永遠不會被'checked',你必須比較'] [person] .checked(這將是一個布爾值)而不是'value'。 PHP如何處理這個問題? – Teemu 2015-02-10 11:12:43

+0

哦,謝謝你@teemu,你是真實的:) – Nayana 2015-02-10 11:16:36

回答

3

您要訪問的checked財產(這是一個布爾值)複選框,沒有價值的:

var isChecked = document.forms["form1"]["person"].checked; 

if (empt == "" && empt1 == "" && !isChecked) { 
    alert("Please input a Value"); 
    return false; 
} 
+0

對不起,Jivings沒有使用「!isChecked」。我用empt2 ==「」然後它的工作。無論如何感謝您的幫助 – Nayana 2015-02-10 11:22:32