2

ボタンをクリックするか入力アクションの両方で検索ボックスを機能させようとしていますが、入力アクションだけでなく入力アクションも機能しません。私はこれが厳密にphpではないことを知っていますが、検索ですべてのphp関数を使用していて、誰かが助けてくれるかどうか疑問に思いました。

これは私のコードです:

function get() {
    $.post('search_tsr.php', {
        search_term: form.name.value
    }, function (output) {
        $('#search_results').html(output).show();
    });
}
$(document).ready(function () {
    $(document).keyup(function (event) {
        if (event.keyCode == 13) {
            $("#form").submit();
            $.post('search_tsr.php', {
                search_term: form.name.value
            }, function (output) {
                $('#search_results').html(output).show();
            });
        }
    })
});

形 :

<form name="form">
    <img src="gfx/search_magnifyer.jpg" width="18" height="18" border="0"
    align="absmiddle">
    <input name="name" type="text">
    <input type="button" onClick="get()" value="Go">
</form>

誰か助けてもらえますか?

4

3 に答える 3

2

「Enterボタン」または「ボタンクリック」のいずれかを機能させるには、ボタンのタイプをボタンではなく「送信」に変更します。

<input type="submit" value="Go">

次に、次のことを実行できます。

$(document).ready(function () {
  $("#searchform").submit(function(e){
      e.preventDefault(); // prevents default form submition
      get(); // executes your get function
    });
});
于 2012-06-28T16:57:37.397 に答える
0

イベントを使用するのではなく、onClickイベントを使用してsubmitください。

フォームにIDをsearchform付けて実行します

$('#searchform').submit(function(){
  // do your stuff here
});
于 2012-06-28T16:53:10.280 に答える
0

入力タイプを送信し、フォームの送信イベントで関数を呼び出す必要があります。できるよ

get()このようにして、ajaxを使用する場合はfalseを返します。

 <form name="form" onsubmit="return get();">
              <img src="gfx/search_magnifyer.jpg" width="18" height="18" border="0" align="absmiddle">   
              <input name="name" type="text"><input type="submit" value="Go">

于 2012-06-28T16:59:54.090 に答える