2009-07-14 74 views
1

我有典型的HTML「聯繫我」頁面,即名稱,電子郵件地址和消息。因爲我想使用Javascript在頁面本身上進行輸入驗證,所以我不能使用「提交」按鈕,否則附加的Javascript函數將被忽略。至少這就是我的理解,CMIIW。
我試圖加載下一頁wrting「location = mail.php」,但它似乎表單參數不會傳遞到我的PHP頁面這種方式。
如何在JavaScript中驗證輸入並在確定時將參數傳遞到我的php頁面?
TIA
Steven從Javascript傳遞參數

回答

5

使用onSubmit事件。將它附加到表單中,如果它返回true,那麼表單將被髮送到PHP頁面。閱讀更多here

+0

接受第一和點,即使scompt太懶惰拼寫出解決方案。但我能理解這一點;這是一個炎熱的一天。 :-) – stevenvh 2009-07-14 14:17:48

1

您仍然應該使用提交按鈕來提交表單,這是正確的行爲。

輸入驗證應使用<FORM>onSubmit事件完成。 它應該是這個樣子:

<script> 
    function validate() { 
     var isFormValid = whatever; // validate form 
     return isFormValid; 
    } 
</script> 

<form action="your.php" method="POST" onSubmit="return validate()"> 
    <!---fields---> 
</form> 
+0

您需要捕獲您的onsubmit處理程序中validate方法的返回值。 – Quentin 2009-07-14 14:03:32

7

您可以使用表格,上面有一個onsubmit處理,如果驗證失敗,返回假的。如果檢查無誤,則返回true,表單將正常提交。

你就會有一個JavaScript函數是這樣的:

function check_it_all() { 
    if (all_ok) { 
    return true; 
    } else { 
    return false; 
    } 
} 

而且形式

<form action=..... onsubmit="return check_it_all();"> 
.... 
</form> 
1

功能驗證()返回一個布爾。
如果validate()返回false,將停止提交。

<input type="submit" onclick="return validate()" value="click" /> 

我是一個aspx.net開發者,所以我習慣於將驗證調用放在按鈕上。