2016-04-28 59 views
-3

我與jQuery代碼處理如下:這個jquery +表單構造是做什麼的?

function formSubmit() { 
    $('#myform').attr('action', "./myFilter.action"); 
    $('#myform').submit(); 
} 

形式:

<form name="myform" action="myAction" id="myform"> 
</form> 

我注意到myFilter.actionmyAction之前調用。但我不明白如何或爲什麼會發生。有人可以解釋嗎?

+1

它看起來像'formSubmit()'被觸發(某處),它創建一個動作並提交,因爲它不會阻止默認行爲,它也可以提交原始動作 – ochi

+0

請詳細說明''。是':HTML命名空間的別名,還是以生成HTML的方式呈現(例如通過ASP.NET)? – zzzzBov

+0

@zzzzBov它是Struts2的表格標籤。但它在這種情況下是不相關的,因爲它會產生簡單的html格式。 –

回答

-1

如果您處理的按鈕的事件沒有提交事件,您可以使用該代碼。

<button onclick="formSubmit()">Submit</button> 
1

假設<s:form>被視爲HTML <form>元件由瀏覽器:*

jQuery的代碼使用.attr()改變形式的[action]屬性。

[action]屬性告訴表單通過GET或POST請求發送數據的URL,具體取決於[method]屬性設置爲什麼。

然後使用.submit()方法強制表單將其包含的數據提交到之前指定的URL。


*這是一個相當大的假設,因爲s:命名空間可以被化名爲幾乎任何東西,所以它是不清楚的元素是如何意味着無需額外的上下文中使用。

+0

action屬性是* not * html表單屬性。 –

+0

@RomanC,我不確定我是否理解那條評論的內容。 – zzzzBov

+0

* [action]屬性告訴表單URL *,這是錯誤的。 action屬性沒有URL。這*是*,因爲它不是* html形式。 –