2011-09-06 10 views
8

どのように私は、フォーム送信使用せずに、この機能を起動することができます

$('#myForm').submit(function() 
{ .... 
+0

ページロード時に、いつ機能をトリガーしますか?いくつかのクリックなどで? – Rafay

+0

私は通常のボタンをクリックするとトリガしたい – Peter

答えて

21

あなたが試みることができる - 。

$('#myForm').trigger('submit'); 

の作業のデモ - 機能とそれが必要とされるとき、それを呼び出すためのコールバックからhttp://jsfiddle.net/ipr101/KvwMb/1/

+0

はうまくいきませんでした。 – Peter

+0

ok、コードはあなたの例で動作するので、私のコードのバグでなければなりません。 – Peter

1
return false; 

関数にこれを追加することが停止しますフォームの提出

それとも別のイベントに関数を呼び出すしたい適切なイベントハンドラに機能を入れた場合(非送信ボタンのクリックを?)

-1

エキスコード。

0
<input type="button" id="btn" value="click"> 

jqueryのは

 $(function(){ 
     $('#myForm').submit(function() 
      { ....}); 

     $("#btn").click(function(){ 
     $('#myForm').trigger('submit'); 
     }); 
    }); 
2

あなたは直接この

$('#button1').click(function(){ 
    $('#search').submit(); 
}); 

のようなものを使用するか、任意のJavaScriptコードからそれを使用することができます。あなたの$('#myForm').submit(function(){.....ファンクションコードがトリガーされます。

0

あなたはDOMデータからそれを掘る必要があります。しかし、私に教えてください、それはお勧めしません。ハンドラ関数が「提出」を形成するために添付されている場合、それはすべてがうまくいけば、最高の状態であなたがリストとしてsubmit_list取得することができ、

var submit_list = events.submit; 

、として存在する

var form = $('#myForm'); 
var data = form.data(); 
var events = data.events; 

、これを試してみてくださいフォームのイベントを送信するために添付されたすべてのハンドラオブジェクトの

ショートカット:

$('#myForm').data().events.submit[0].handler 

あなたは1と#myFormのためのイベントを提出する添付一つだけのハンドラを持っていると仮定するとは、あなたの関数です。

data()でプレイしますが、お勧めしません。ハッピーコーディング。

関連する問題