簡體   English   中英

在angularjs中將圓形結構轉換為json

[英]Converting circular structure to json in angularjs

我的js函數從表單中獲取數據

 var dataUpload={};

             dataUpload.p1=$('#p1').combodate('getValue'); //date
             dataUpload.p2=$('#p2').combodate('getValue');//date
             dataUpload.p3=$('#p3').val();                //textarea
             dataUpload.p4=$('#p4').val();                //text input
             dataUpload.p5=Date.now();                    //date  
             dataUpload.p6=1;                             //number
             dataUpload.id=Id;                              //number
           $http.post("url of your route",data).success(function (data)
           {
              console.log("success");
           });

在第一次它給出“將循環結構轉換為json”錯誤時,第二次插入數據沒有問題。 我無法理解它的問題:為什么會這樣?

我找到了一個解決方案:普通的$ http帖子或每個http方法函數,使用json格式的選擇方法發送數據。
AngularJs在發送數據時應用於Json()函數。 如果數據的一部分包含一個json無法轉換的對象,它將觸發'在angularjs中將循環結構轉換為json'錯誤。
如果你第二次發送它Angularjs嘗試評估對象並且它成功,那么然后執行查詢。

Date.now()                                                
dataUpload.p2=$('#p2').combodate('getValue');//date xeditable 

他們倆都可以歸還一個物體。 因此,如果您遇到此錯誤,請檢查您發送的數據的每個值,它們可能不是您認為應該是的(我希望有字符串,它會返回一個Object)。 您可以通過console.log了解您的數據是否為對象:

console.log(data1);  //output : Object obj                             IS AN OBJECT
console.log(data2);  //output : "Answer about it"                      IT'S NOT AN OBJECT

如果輸出類似於data1那么你必須使用諸如moment(date).format("YYYY-MM-DD hh:mm:ss")或其他庫之類的方法將數據格式化為您想要的表格。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM