2009-06-27 10 views
0

Iは、入力ボックスユーザーがキーワードを入力したときにonclick関数をトリガする方法は? jQueryの

<input type="text" name="search" id="search" /> 
<img src="icon.png" alt="" id="doSearch" /> 

私はjqueryのを使用して、私は "doSearch" のためのonclickイベントを持っています。だから、 "ab"のような言葉を入力し、 "icon"をクリックすると、phpファイルにajaxリクエストが送信され、結果がdomに追加されます。

$('#doSearch').click(function() { 
    $(".showResults").show("fast"); 
    var input_text = $('input[name="search"]').val(); //retrieve text 
    $.ajax({ 
     method: "get" ... 
     ... some more lines 
    }) etc etc 

私は、ユーザーが結果を得るために、画像のアイコンをクリックして持っていけないように、いくつかの文字が入力ボックスに入力されたとき、私は、自動的にonclickの機能を起動することができますか疑問に思って。また、入力ボックス内でTabキーを押すと、イメージアイコンにフォーカスを設定することができます。

ありがとうございました。

編集:

他の入力ボックスも同じフォームにあります。したがって、この入力はスタックオーバーフロータグの入力と多少似ています。

答えて

2

これは何ですか?画像は、フォームの送信ボタンになり、ユーザーはをフォームの提出入る押すたび

<form id='search'> 
<input type="text" name="search" id="search" /> 
<input type="image" src="icon.png" />  
</form> 

その方法:それを行うための適切な方法はこれを行うことであろう

 
$('#doSearch').keyPress(function(e){ 
    if($(this).val()=='??') $('#doSearch').trigger('click') 
}); 
+0

はい、私はこのようなものを探しています。何が "??"平均??ありがとう – TigerTiger

+0

クリックを送るたびにあなたの状態です。たとえば、入力値が2文字より長いかどうかを確認することができます。 – Thinker

2

イベントは解雇され、あなたが望むことをすることができます。

これは、あなたがjQueryの操作を行うことができる方法である:

$('#search').submit(function() { 
    // do what you were doing 
    return false; // prevent form submission 
}); 

それはAJAX要求でない場合は、サーバでチェックすることができ、これはまた、無効JavaScriptで人にやさしいという逆さまになります代わりに、要求されたコンテンツで全ページを表示することができます。私はこれもまたTABも同様に画像に行くようになることを確信しています。

+0

実際には、これはフォームの1つの検索ボックスだけではありません。フォームには他の入力ボックスもあります。この入力ボックスは、新しい質問を作成するときにTAGS入力と多少似ています。 ..ありがとうございました。 – TigerTiger

関連する問題