私はsymfony2でajaxについての簡単なチュートリアル/例を探しています。AjaxをSymfony2と統合する方法
私はこれらの例があります。
city.php:http://pastebin.com/Qm8LS5kh
ajax_req.js:http://pastebin.com/UqJMad24
のindex.html:http://pastebin.com/H1err4Yh
どのようにすることができますがこれらはSymfonに入れられますy2アプリ?
私はsymfony2でajaxについての簡単なチュートリアル/例を探しています。AjaxをSymfony2と統合する方法
私はこれらの例があります。
city.php:http://pastebin.com/Qm8LS5kh
ajax_req.js:http://pastebin.com/UqJMad24
のindex.html:http://pastebin.com/H1err4Yh
どのようにすることができますがこれらはSymfonに入れられますy2アプリ?
簡単です。 Symfony2で3つのステップを経てAJAX呼び出しを行う方法を説明します。次の例では、jQueryライブラリを使用することを想定しています。
AJAX呼び出しを処理するアクションのルートを定義します。例えば。
AcmeHomeBundle_ajax_update_mydata:
pattern: /update/data/from/ajax/call
defaults: { _controller: AcmeHomeBundle:MyAjax:updateData }
Home
バンドルからMyAjax
コントローラでアクションを定義します。例えば。
public function updateDataAction(){
$request = $this->container->get('request');
$data1 = $request->query->get('data1');
$data2 = $request->query->get('data2');
...
//handle data
...
//prepare the response, e.g.
$response = array("code" => 100, "success" => true);
//you can return result as JSON
return new Response(json_encode($response));
}
例えば、あなたのTwig
テンプレートであなたのAJAX
コールを準備:
function aButtonPressed(){
$.post('{{path('AcmeHomeBundle_ajax_update_mydata')}}',
{data1: 'mydata1', data2:'mydata2'},
function(response){
if(response.code == 100 && response.success){//dummy check
//do something
}
}, "json");
}
$(document).ready(function() {
$('button').on('click', function(){aButtonPressed();});
});
あなたは他のAJAX呼び出しを使用して例を変更することができます。
コントローラを助けた http://pastebin.com/sPJkhpbY をルーティングします。http ://pastebin.com/mpb4X7CU ajax.js http://pastebin.com/tx70YNxz ビュー: { "コード": http://pastebin.com/9DvVPYMJ 私は私だけ見ブラウザを開き:100、 "success":true} 私は完全に初心者です –
これは、PHPでjsコードを記述する必要があることを意味しますか? – wilsonrufus
@wilsonrufus ** NO!** JSは常にクライアントサイドで実行されます.PHPではサーバサイドでPHPが実行されます。 ajaxを使用すると、1回の呼び出しでクライアント側のページ全体がレンダリングされません。 URLに対するクライアントの要求。サーバーはまず、私が示したJSコードを持つメインのPHPページを返します。次に、ブラウザが応答を受け取ってメインページをロードすると(そして最終的にはドキュメントが準備完了です)、JSコードが実行されます。 JSコードはSymfonyアクション(一意のURLによってマップされます)を呼び出し、JSが処理する結果を待ちます。 – JeanValjean
エンティティ/フォーム/アクション/ビューをajaxなしで作成しようとしましたか? – Ziumin
はい、私は –
ショー(Symfony2ので)このコードで作成しますが、答えは私をたくさん – Ziumin