2016-04-11 29 views
1

てDjangoのバックエンドにJSONオブジェクトを送信するI次のコード(jQueryの)JSONファイルを作成する必要があります。は、AJAX呼び出し

$(".save").on("click", function(){ 
var items=[]; 


$("tr.data").each(function() { 

var item = { 
    item.Code : $(this).find('td:nth-child(1) span').html(), 
    itemQuantity : $(this).find('td:nth-child(4) span').html()   
}; 
items.push(item);  

}); 

}); 

は今、これは私のAJAX機能である:今

(function() { 
     $.ajax({ 
      url : "", 
      type: "POST", 
      data:{ //I need my items object, how do I send it to backend server (django)?? 
        calltype:'save'}, 
      dataType: "application/json", // datatype being sent 

      success : function(jsondata) { 

       //do something 
      }, 

       error : function() { 
        //do something 
       } 
     }); 
    }()); 

を、私の疑問は、私が作成した 'item []'オブジェクトをバックエンドにどのように送るのですか?私は、AJAX関数を呼び出すためのitem []オブジェクトと変数 'c​​alltype'の両方を送る必要があります。バックエンドのDjango Viewと同じAjax関数が呼びます。

私のAJAX機能はどのように見えますか?

+0

グローバル変数 'items'を作成できますか? –

+0

ちょうどそれを得た。問題は可変アイテムではありませんでした。グローバル変数には他の要素があります – Sayantan

答えて

1

ちょっと私の答えを得ました。 私はそれが権利を取得するには、以下のAJAX機能を使用:

(function() { 
     $.ajax({ 
      url : "", 
      type: "POST", 
      data:{ bill_details: items, 
       calltype: 'save', 
       'csrfmiddlewaretoken': csrf_token}, 
      dataType: 'json',    
      // handle a successful response 
      success : function(jsondata) { 

       console.log(jsondata); // log the returned json to the console 
       alert(jsondata['name']); 
      }, 

        // handle a non-successful response 
       error : function() { 
        console.log("Error"); // provide a bit more info about the error to the console 
       } 
     }); 
    }()); 

だから、これは自己の答えのようなものです! :)ありがとうたくさんのSO !!

+0

あなたの問題を解決してくれてうれしいよ!あなたの情報については、引用符でcsrfmiddlewaretokenをラップする必要はなく、整った保守可能なコードのために一定しているようにしてください。 – phenxd

+0

後悔して申し訳ありませんがphenxd!ありがとうございました!それは確かに絶え間なく素晴らしいですが、私は引用符でそれを入れなければならないと思いました!どうもありがとう – Sayantan