我有一個包含選擇框,無線電區域和文本框的10個表單的頁面。它接受參數,查詢數據庫並在同一頁面上打印結果。 我也在同一頁面上使用$ _POST ['']來保存表單值,而不會丟失它。.click()函數在同一頁面上提交表單後停止工作
我有很多方法使用.click函數在這個頁面中。他們在第一次提交之前都能正常工作。在第一次提交所有參數後,.click函數停止工作。沒有任何與.click功能的jQuery代碼工作。
這是否與服務器在同一頁面上返回信息有什麼關係,或者與使用$ _POST ['']保持表單信息的方式有關?
這是一段使用.click函數的代碼。
<!-- Clear form data after form submission -->
<script language="Javascript">
function resetForm($form) {
alert("resetting form");
$form.find('input:text, input:password, input:file, select, textarea').val('');
$form.find('input:radio, input:checkbox')
.removeAttr('checked').removeAttr('selected');
}
</script>
<script language="Javascript">
$(document).ready(function() {
$("#clear_form").click(function(){
alert("clear form button clicked");
resetForm($('#search_query'));
});
});
</script>
表單以下列方式提交。
<form method="POST" action="samepage.php" name="form1" id="formid" onsubmit="return validate_Form()">
# Bunch of text fields, select boxes, radio buttons,
<input type="submit" value="Submit" id="submit">
在頁面的最開始,我收集表單數據以在提交後自動填寫表單字段以保留表單數據。
$x = $_POST['x'];
如果表單提交是succesfull(.IE通過所有形式驗證)我再次收集數據來查詢數據庫,並在同一頁上打印結果。
$xx = $_POST['x]
我有一個自定義的驗證函數,我寫了基本上只是檢查如果字段爲空或沒有,沒有什麼幻想。它的設置必須至少輸入一個字段才能將表單提交給服務器。
沒有看到你的代碼很多建議是檢查'.on' http://api.jquery.com/on/ – Loktar
'language'屬性已被棄用。刪除它並用'type =「text/javascript」'替換它(可選,它是默認的)。如果你正在使用合理的現代jQuery版本,也用'.prop('checked',false).prop('selected',false)替換掉那些removeAttr調用' – ThiefMaster
你在使用AJAX嗎?你使用「輸入類型='提交'」? –