2012-02-10 9 views
0

ユーザーが#postcode-formを送信するか、または#show-resultsリンクをクリックすると、同じ機能を使用したいと考えています。どのように私はそれを機能を複製せずに行うことができますか?サブミットとクリック機能を組み合わせる

HTML

<form id="postcode-form"> 
    <input id="postcode" type="text" name="postcode" /> 
    <input type="submit" value="search" /> 
</form> 
<a id="show-results" href="#">Show the results</a>​ 

を使用でき

$("#show-results").click(function(e){ 
     e.preventDefault(); 
     codeAddress(postcode); 
});​ 

答えて

1
$("#postcode-form").submit(function(){ 
    //your submit function, validation, etc. 
}); 

$("#show-results").click(function(e){ 
    $("#postcode-form").submit(); 
}); 
0

JAVASCRIPT

$('#show-results').submit(); 
1

は、リンクではなく、フォームを送信してください:あなたは、フォーム上をonSubmitイベントを追加する必要が

$('#show-results').click(function(e){ 
    e.preventDefault(); 
    $('#postcode-form').submit(); 
}); 
1

は強制的に提出するフォームを停止し、クリックに提出し、その結果を使用して、強制的にいずれかのAJAXまたは単純な形の方法を提出することにより、フォームを送信することができ、リンク上。

<form id="postcode-form" onsubmit="return false;"> 
    <input id="postcode" type="text" name="postcode" /> 
    <input type="submit" value="search" /> 
</form> 
<a id="show-results" href="#">Show the results</a>​ 

とJS

$('#show-results').click(function(e){ 
     e.preventDefault(); 
     $('#postcode-form').submit(); 
    }); 
+0

うん、あなたは正しいが、私はむしろ、インラインJSコードとマークアップを混在させないでしょう。代わりに、 'submit'メソッドの関数本体に' event.preventDefault() 'を追加してください。 – Laszlo

関連する問題