2012-10-02 56 views
2

如何讓我的表單在單擊提交時運行一個函數?讓窗體運行一個javascript函數?

<form id="commentForm" name="comment"> 
    <fieldset> 
     <label for="name">Name <span>(required)</span></label> 
     <input type="text" class="text" id="name" value="" /> 
     <label for="email">Email <span>(will not be published) (required)</span></label> 
     <input type="text" class="text" id="email" value="" /> 
     <label for="website">Website</label> 
     <input type="text" class="text" id="website" value="" /> 
     <label for="message">Message <span>(required)</span></label> 
     <textarea id="message" class="textarea" rows="10"></textarea> 
     <input type="submit" name="submit" class="submit" id="submit_btn" value="Submit Comment" action="JavaScript: ajax_add_comment();"> 
    </fieldset> 
    ... 

我試圖運行下面的功能:

function ajax_add_comment() { 
    alert ("testing"); 
} 
+1

[表單提交執行Javascript最佳實踐?]可能的副本(http://stackoverflow.com/questions/8082846/form-submit-execute-javascript-best-best-practice) –

回答

1

您可以使用jQuery,並使用.submit()函數。 你可以給表格一個id然後附加提交功能。

例子:

<form id="execute".... 

</form> 

<script type="javascript"> 
$("#execute").submit(function(){ 
alert("i've submitted this form"); 
}); 
</script> 

確保你已經包括jQuery的js文件。

<script src="http://code.jquery.com/jquery.min.js" type="text/javascript"></script> 
4

使用onclick屬性,而不是action

1

當提交表單時,您可以使用onsubmit事件來執行JavaScript代碼。例如:

<script> 
function ajax_add_comment() { 
    alert ("testing"); 
} 
</script> 

<form id="commentForm" name="comment"> 
          <fieldset> 
           <label for="name">Name <span>(required)</span></label> 
           <input type="text" class="text" id="name" value="" /> 
           <label for="email">Email <span>(will not be published) (required)</span></label> 
           <input type="text" class="text" id="email" value="" /> 
           <label for="website">Website</label> 
           <input type="text" class="text" id="website" value="" />                 
           <label for="message">Message <span>(required)</span></label> 
           <textarea id="message" class="textarea" rows="10"></textarea> 
           <input type="submit" name="submit" class="submit" id="submit_btn" value="Submit Comment" onsubmit="ajax_add_comment();"> 
          </fieldset> 

謝謝!

相關問題