2017-06-22 12 views
0

私のデータベースにはオプションとしていくつかの行を表示するデータリストがページにあります。私は、データリスト内のオプションの1つと、その特定のものの残りの情報をデータベースから取得し、その情報を出力するためにページ上のHTMLを変更するページを選択できるようにしたいと思います。 AJAXを使用する場合は、PHPを使用する必要があるように、ページをリロードする必要なしにこれを行う方法があることを理解しています。私はちょっとした手がかりがありません。どんな助け?データベースから情報を動的に取得する

答えて

2

はjQueryを使って、この参照http://api.jquery.com/jquery.ajax/ の表情を持っていることは非常に簡単です(jQueryのJavaScriptフレームワークである)

$.ajax({ 
    type: "GET", 
    url: 'test.php', 
    data: {"type":"check"}, 
    success: function(response){ 
     console.log(response); 
     //This is your content you get from your php file, now you can assign it to html using jQuery 
     $('p.print').html(response); 
    } 
}); 

データリストは、あなたが選択ボックスを持っていることを意味?したがって、このような何かの内側にAJAXリクエストを呼び出す:

$('select').on('change', function() { 
    $(this).val(); //Get the option which was selected 
    //Ajax request here regarding to the selected option 
}); 
+0

だけ追加し、OPのための注意事項を:jQueryの.htmlを()とは.text()メソッドは、AJAX要求の後、さわやかなページコンポーネントのためにも有用です。 – treecon

+0

私はそれをプッシュしていますが、これをPHPファイルに実装する方法を詳しく説明できますか?私はjQueryもAJAX Imも恐れていません。 – Kriss0612

+0

PHPはサーバサイトです。JavaScript/jQueryのようなブラウザのサイト言語が必要な場合は、動的に何かをしたいと思っています。 PHPだけでは不可能です。あなたはそれを行うためには両方が必要です。ページ全体をリフレッシュするとPHPで何かできますが、ページのリロードがなければイベントや何かに動的に反応することはできません。このようなことをするには、JavaScriptが必要です – Schlumpf

0

アイデアはjavascriptの変更イベントは、あなたのデータリストでトリガされたときにデータを取得するために、サーバーにAJAX要求を送信することです。あなたはjQueryのを使用していると仮定すると:

$('SELECTOR_FOR_DATALIST').on('change', function() { 
    var record_id = $(this).val(); // this gets the value of your selected data 
    var data = { 
     'id': record_id 
    }; 

    $.ajax({ 
     type: "GET", 
     url: 'endpoint.php', // this is your endpoint for server side processing 
     data: data, 
     success: function(response) { 
      // here's where you'll handle a successful response from the server 
     }, 
     error: function(jqXHR, textStatus, errorThrown) { 
      // handle error response here 
     } 
    }); 
}); 
+0

私は多くを求めるImを知っています。残念ですが、エンドポイントのPHPファイルを作るにはどうしたらいいですか?つまり、データベースから情報を取得する方法はわかりますが、ここで何が何であるかを知るにはjQueryを知りません。データベースから適切な情報を選択できるようにするには、データベース内の情報(この場合はユーザーが選択したもの)と比較する変数が必要です。 jQueryを通過した後、その変数はエンドポイントのphpファイルに何になるでしょうか? – Kriss0612

+0

あなたが言ったように、あなたはデータベースから必要なものを見つけるために変数(ID)を渡す必要があります。この場合、ユーザーの選択が必要です。 $(this).val()はあなたにその値を与えます。 $(this)は、 'change'イベントをトリガーしたjqueryオブジェクト、つまりユーザーの選択を参照します。その情報を「id」としてエンドポイントに送信しています。あなたのPHPスクリプトでは、リクエストから 'id'変数を取得し、それはユーザーの選択です – pew007

+0

ああ、私は最後に、$ idというエンドポイントスクリプトにPHP変数を持てますスクリプトで使用するどのようにしてjQueryはPHPスクリプトの内容を取得しますか? – Kriss0612

関連する問題