4

私の現在のプロジェクトでは、ユーザーがそれぞれ要件と面積を入力する 2 つのテキスト フィールドがあります。これらの値を取得するには、ajax 呼び出しを実行し、データベースから必要なデータをフェッチして返す必要があります。いずれかのテキスト フィールドで入力が 4 文字を超える場合は、ajax 呼び出しを行う必要があります。テキスト フィールドが 1 つしかない限り、問題はありませんでした。

<input type="text" value="requirement" onkeyup="function1(this.value)" />
<input type="text" value="area" onkeyup="function2(this.value)" />

<script>
function function1(valuetosearch)
{
 //make the ajax call
}
</script>

<script>
function function2(valuetosearch2)
{
 //make the ajax call
}
</script>

2 つのスクリプトを組み合わせて、ajax のデータを配列として渡すにはどうすればよいですか?
PS スクリプトを作成する主な理由は、2 つの入力フィールドを組み合わせて検索を行うことです。たとえば、誰かが要件フィールドに家、車両、エリア フィールドに場所 1、場所 2 を入力した場合。検索結果には、
1) place1 house
2) place1 vehicle
3) place2 house
4) place2 vehicleの結果が表示されます。

4

3 に答える 3

2

http://jsfiddle.net/JMpgU/

$("input").keyup( function () {
    var str = $(this).val() + " " + $(this).siblings().val();
    alert(str);
   //make the ajax call
});

任意の数の入力: http://jsfiddle.net/JMpgU/2/

$("input").keyup( function () {
    var strings = $(this).
                  siblings().
                  addBack().
                  map(function () {
                      return $(this).
                             val();
                  }).
                  toArray();
 //make the ajax call
});
于 2013-04-16T10:25:32.853 に答える
1

これを試して

<input type="text" value="requirement" onkeyup="functionABC()" id="First" />
<input type="text" value="area" onkeyup="functionABC()" id="Second" />

<script>
function functionABC()
{
   var searchString=$("#First").val()+" "+$("#Second").val();
   //make the ajax call
}
</script>

「searchString」をパラメーターとして渡します。

于 2013-04-16T10:17:53.283 に答える