2017-05-16 16 views
0

コントローラの1つで過去のPOSTパラメータにAjaxを使用したいとします。このためAJAXとSymfony 3.xを使用してポストパラメータを渡しているときにエラーが発生しました

、私はこのコードをした:

<script type="text/javascript"> 
document.getElementById('navbar').style.visibility='hidden'; 

idacc = $("#idAcc").data(); 
console.log(idacc); 
var form = $("#form"); 
div = form.find("div"); 
console.log(div); 
$("#ajax").click(function(div){ 
     $.ajax({ 
      type: "POST", 
      url: "/message/add/" + {{ id }}, 
      data: div, 
      success: function(div){ 
       console.log(div); 
       console.log($(this)); 
      } 
     }); 
    console.log("click"); 
}); 
</script> 

それは私がウェブで検索している間に私が作った小さなスクリプトです。

私のhtmlの構造体は次のとおりです。

<div class="form> 
    <div>...</div> 
    <div>...</div> 
    <div>...</div> 
    <div>...</div> 
    ..... 
</div> 

だから私のスクリプトを使って、divの変数は、「フォーム」クラスでのdivにdiv要素のすべてを受け取ります。私は成功関数にそれをダンプするとき、それは大丈夫です、私は欲しいものがあります。私はsymfonyのツールバーのPOSTパラメータで参照する場合でも、何もありません、私もこれを実行しようとしました:

data: { 'div': div } 

を私はエラー

Uncaught TypeError: Cannot read property 'defaultView' of undefined

+0

どのように私は、コントローラ内のidパラメータを渡している 'ここid'' {{ID}} ' –

+0

@JayBlanchardを設定されているを使用するために私がお勧めします。 idは大丈夫です、それは私が望むものを示しています。 –

+0

'' {{path( 'message_add'、{id:id})}} ''など、あなたのルートをハードコードするべきではありません。 – COil

答えて

0

を取得しています使用小枝建設{{ id }}、あなたがしなければならない場合あなたのController-Actionが返すものは、'id' => 'some id'です。

あなたは{{ path() }}

url: '{{ path("app.admin.search.certificate", {"cartId": cart_id}) }}', 
app.admin.search.certificate - path to you route. 
cartId - parameters for route and action. 
+0

私は今、感謝の男性を使用しましたが、私の最初の問題は解決しませんでした。しかし、ヒントbtwのおかげで! –

+0

@Sebastien Napo、ようこそ。 'myData'のように、' div'の名前を変更してみてください。 div - それはhtmlタグですが、mbは問題ですか? –

+0

試してみましたがまだ動作していません。:/ –

関連する問題