2016-05-31 14 views
0

AJAX呼び出しでJSON配列を送信する際に問題があります。続いて助けてください、私はアヤックスでjsonArrayを送信するために今すぐ次JavaScriptのPOSTリクエストでJson Arrayを送信する

var jsonArray = []; 
jsonArray["company_name"] = company_name; 
jsonArray["company_localname "] = company_localname; 

if (companytype == 'retailer') { 
    jsonArray["bank_name"] = bank_name; 
    jsonArray["account_title"] = account_title; 
    jsonArray["business_nature"] = business_nature; 
    jsonArray["gross_sales"] = gross_sales; 
} 

のようなJSON形式でデータを保存していたすべての値が

$.ajax({ 
    url : url, 
    type : "POST", 
    dataType : 'json', 
    contentType : 'application/json; charset=UTF-8', 
    data : JSON.stringify(jsonArray), 
    success : function(response) { 
     //Some Code here 
    } 
}); 

を呼び出して取得した後、私のコード

var company_name = $('input#company_name').val(); 
var company_localname = $('input#company_localname').val(); 
var companytype = $('#companytype').val(); 

if (companytype == 'retailer') { 
    var bank_name = $('input#bank_name').val(); 
    var account_title = $('input#account_title').val(); 
    var business_nature = $('input#business_nature').val(); 
    var gross_sales = $('input#gross_sales').val(); 
} 

です私はデータを送る。私がここで間違いを犯しているかどうか教えてください。ありがとうございます

答えて

0

このようなことをしてください。

$.ajax({ 
     url: url, 
     type: "POST", 
     dataType: 'json', 
     contentType: 'application/json; charset=UTF-8', 
     data: JSON.parse(JSON.stringify(jsonArray)), 
     success: function(response) { 
      //Some Code here 
    } 
    }); 
+0

返信いただきありがとうございます。しかし、申し訳ありませんでした。 –

2

JavaScript/JSON配列では、0ベースのインデックスデータ構造です。あなたがここで使用していることは、より地図のようなものです:JavaScriptで

var jsonArray = []; 
jsonArray["company_name"]=company_name ; 

あなたは(うまくすることができますが、それはあなたが望むものはおそらくない)、このように配列を使用することはできません。オブジェクトのインデックスではなくオブジェクトに文字列をマップするマップのようなデータ構造の場合、オブジェクトを使用します。

またはではなくvar jsonArray = [];を使用してください。{}は、あなたのようにプロパティを割り当てることができるオブジェクトを作成します。そしてJSON.stringifyは正しくこのようなJSON文字列にこれを翻訳する:

+0

ありがとうございました。出来た :) –

0
{ "property": value, "otherProperty", otherValue } 

JSON.parse()メソッドは、必要に応じて解析した値を変換し、JSONなどの文字列を解析します。 Read more about JSON.parse() method

JSON.stringify()メソッドは、JavaScript値をJSON文字列に変換します。 Read more about JSON.stringify() method

ここでは単純に配列を送信し、サーバー側で解析することができます。

$.ajax({ 
    url : url, 
    type : "POST", 
    dataType : 'json', 
    data : jsonArray, 
    success : function(response) { 
     //Some Code here 
    } 
}); 
関連する問題