2013-12-16 26 views
1

我想通過傳遞序列化的json對象並將其分配給ajax調用的data屬性來執行ajax調用。 但有些事情是不恰當的數據屬性控制分配序列化對象去jQuery的2.0.3.min.js文件JSON.stringify不是序列化對象

<script type="text/javascript"> 
    function AddEmployee() 
    { 


     var Product = new Object(); 
     Product.Name = "kRISH"; 
     Product.Price = "23"; 
     Product.Category = "AS"; 

     $.ajax 
     ({ 
      url: 'http://localhost:62310/api/products', 
      type: 'POST', 
      data: JSON.stringify(Product), 
      contentType: "application/json;charset=utf-8", 
      success: function (data){ WriteResponse(data);}, 
      error: function (x, y, z){ alert(x + '\n' + y + '\n' + z);} 
     }); 
    } 
</script> 
+0

數據:JSON.stringify(產品:產品)? –

+0

你的語法有問題。 JSON.stringify(產品:產品)。它應該像JSON.stringify(產品),其中產品是JSON對象。 –

+0

你可以指定教程,可以獲得我的知識在web api,jquery,json –

回答

0

只是做

var json_text = JSON.stringify(Product, null, 2); 

$.ajax 
     ({ 
      url: 'http://localhost:62310/api/products', 
      type: 'POST', 
      data: json_text , 
      contentType: "application/json;charset=utf-8", 
      success: function (data){ WriteResponse(data);}, 
      error: function (x, y, z){ alert(x + '\n' + y + '\n' + z);} 
     }); 
+0

爲什麼在只傳輸到服務器時使用漂亮的打印? – Sirko

+0

你可以指定的教程,可以獲得我的知識在web api,jquery,json –

+0

@SunilJadhav:https://developer.mozilla.org是你的朋友 對於JSON,它是https://developer.mozilla.org/ en/docs/JSON 對於Jquery,JQuery文檔很好 –

1

要麼你想序列化一個對象與屬性Product,那麼你需要

data: JSON.stringify({Product : Product}) 

,或者你只是想序列化你的產品,那麼你需要

data: JSON.stringify(Product) 

BTW你的對象初始化可以改寫爲:

var Product = { 
    Name : "kRISH", 
    Price : "23", 
    Category : "AS" 
}; 
+0

請重新檢查我發佈了一個錯誤,同時發佈question.JSON.stringify(產品)也不執行。它去jQuery-2.0。 3.min.js文件 –

+0

你可以指定教程,可以獲得我的知識在web api,jquery,json –

+0

@SunilJadhav網上應該有很多,你應該能夠找到他們使用谷歌。我建議先從各自的[jQuery Docu](http://api.jquery.com/jQuery.ajax/)或一般[MDN](https://developer.mozilla.org/en/docs/JSON )。 – Sirko

1

Product : Product不是一個對象。

你應該有一個實際的對象替換它:

$.ajax 
    ({ 
     url: 'http://localhost:62310/api/products', 
     type: 'POST', 
     data: JSON.stringify({Product : Product}), 
     contentType: "application/json;charset=utf-8", 
     success: function (data){ WriteResponse(data);}, 
     error: function (x, y, z){ alert(x + '\n' + y + '\n' + z);} 
    }); 

http://jsfiddle.net/floo51/x52GX/

+0

請重新檢查我在發佈問題時發生了錯誤。\ –

+0

請重新檢查我在發佈問題時犯了一個錯誤。 –