submit()函數用於為每個匹配元素的submit事件綁定處理函數。此函數也可用於觸發submit事件。另外,你還可以額外傳遞給事件處理函數一些資料。
submit事件會在表單被提交時觸發。此事件僅適用於ff9c23ada1bcecdd1a0fb5d5a0f18437元素。
此外,你可以為相同元素多次呼叫函數,從而綁定多個事件處理函數。觸發submit事件時,jQuery會依照綁定的先後順序依序執行綁定的事件處理函數。
要刪除透過submit()綁定的事件,請使用unbind()函數。
此函數屬於jQuery物件(實例)。
語法
jQueryObject.submit( [ [ data ,] handler ] )
如果指定了至少一個參數,則表示綁定submit事件的處理函數;沒有指定任何參數,則表示觸發submit事件。
參數
參數 描述
data 可選/任意型別觸發事件時,需要透過event.data傳遞給事件處理函數的任意資料。
handler 可選/Function類型指定的事件處理函數。
jQuery 1.4.3 新增支援:submit()支援data參數。
參數handler中的this指向目前DOM元素。 submit()也會為handler傳入一個參數:表示目前事件的Event物件。
如果函數handler的傳回值為false,則表示阻止元素的預設事件行為,並停止事件在DOM樹中冒泡。例如,3499910bf9dac5ae3c52d5ede7383485連結的click事件的處理函數傳回false,可以阻止連結的預設URL跳轉行為。 ff9c23ada1bcecdd1a0fb5d5a0f18437表單的submit事件的處理函數傳回false,可以阻止表單預設的表單提交行為。
傳回值
submit()函數的回傳值為jQuery類型,傳回目前jQuery物件本身。
範例&說明
請參考下面這段初始HTML程式碼:
<form id="myForm" action="http://www.365mini.com" method="post"> <input id="name" name="name" type="text" value="CodePlayer" /><br> <input id="age" name="age" type="text" value="20" /><br> <input type="submit" value="提交" /> </form> <div id="msg"></div>
現在,我們為ff9c23ada1bcecdd1a0fb5d5a0f18437元素的submit事件綁定處理函數(可以綁定多個,觸發時依綁定順序依序執行):
$("form").submit( function(event){ if( !$("#name").val() ){ alert("姓名不能为空!"); return false; // 返回值为false,将阻止表单提交 }else if( !$("#age").val() ){ alert("年龄不能为空!"); return false; // 返回值为false,将阻止表单提交 } } ); // 触发form元素的submit事件 // $("form").submit( );
我們也可以為事件處理函數傳遞一些附加的資料。此外,透過jQuery為事件處理函數傳入的參數Event對象,我們可以取得目前事件的相關資訊(例如事件類型、觸發事件的DOM元素、附加資料等):
var map = { name: "姓名", age: "年龄" }; $("form").submit( map, function(event){ var labelMap = event.data; var label = ''; // 循环验证所有text元素是否为空 $(this).find(":text").each(function(){ if( !this.value ){ label = labelMap[this.name]; return false; } }); if( label ){ alert( label + "不能为空!" ); return false; } } );
以上是jQuery.submit() 函數詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!