[英]Cannot submit form with .submit()
當任何表單值更改並填寫表單中的所有字段時,我需要觸發表單提交事件。 除了$('#date_filter_form').submit();
之外,其中的所有內容$('#date_filter_form').submit();
線。 我可以.hide()表單,但由於某種原因不能提交()它。 文檔說submit()與trigger('submit')相同,所以我無法弄清楚它為什么不起作用。
$('#date_filter_form input[type="text"]').change(function() {
var from_val = $('#date_filter_form #from_date').val();
var to_val = $('#date_filter_form #to_date').val();
if(from_val != '' && to_val != '') {
$('#date_filter_form').submit();
}
});
HTML:
<form method="post" id="date_filter_form" name="date_filter_form" action="">
<label class="left required" for="from_date">From</label>
<input type="text" id="from_date" class="datepicker hasDatepicker" value="" name="from_date">
<label class="left required" for="to_date">to</label>
<input type="text" id="to_date" class="datepicker hasDatepicker" value="" name="to_date">
<input type="hidden" value="" name="from_date_db">
<input type="hidden" value="" name="to_date_db">
<input type="submit" id="submit" class="button" value="Show results" name="submit">
</form>
您的submit
按鈕名為'submit'
,它與form.submit
方法沖突。
發生這種情況是因為瀏覽器提供表單元素的快捷方式訪問器,引用元素的屬性,綁定到form
元素,使用name
屬性作為屬性名稱。
名為submit
的元素將替換form.submit
方法,您只需更改名稱即可。
另請注意,在IE中,您將遇到與id
屬性相同的問題。
也可以看看:
定義腳本將與之交互的表單HTML時最常見的錯誤來自表單控件的快捷方式訪問器的存在。 它是為控件賦予與FORM元素的現有屬性相對應的NAME(或可能的ID)。 最常見的例子是類型=“提交”的INPUT元素,其中名稱為“提交”。 因為命名控件可用作FORM元素的命名屬性,所以此INPUT元素在屬性名稱“submit”下可用。 不幸的是,FORM元素已經有一個名為“submit”的屬性,它是可用於通過腳本提交表單的submit方法。
你的名字是你的名字
date_filter_form
但是你正在尋找一個名為的表格
date_filter
所以你的驗證不會通過
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.