看板 Ajax 關於我們 聯絡資訊
※ 引述《azoaho (歷史洪流)》之銘言: : 請問大家 : json在傳送前,是否都一定要字串化嗎 : 是否能用物件的方式傳送? : 因為今天老闆看到我傳送出來的json是字串時 : 把我砲轟了一頓... : 所以想請問大家是我對json的了解錯誤嗎? 以下是我寫給老闆的程式碼 好吧 我承認是真的有想要來討拍的 更想知道如何弄出老闆說的物化傳送 <!DOCTYPE HTML> <html> <script text="text/javascript"> function submitdata() { var tmpdata=false; tmpdata= getformdata(); if(tmpdata) { pushdata(tmpdata); } } function getformdata() { //取得表單上資料 var oform = document.forms["form1"]; var fCount =oform.elements.length; var fArray = new Array(); for(i=0;i<fCount;i++) { fArray[i]= oform.elements[i].value; } //將陣列轉成json格式 //return ; return JSON.stringify(fArray); //return JSON.parse(fArray); ↑↑上面這行 應該是不能成立的吧 但如果是用物件去傳的話 是否在這將陣列轉成json物件? } function createxmlhttprequest() { var http=false; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari http=new XMLHttpRequest(); } else {// code for IE6, IE5 http=new ActiveXObject("Microsoft.XMLHTTP"); } return http; } function pushdata(inData) { var xhr=false; xhr = createxmlhttprequest(); if(xhr) { xhr.onreadystatechange=function() { if (xhr.readyState==4 && xhr.status==200) { alert(xhr.responseText); } } } //傳出json data xhr.open("POST","second.html",true); xhr.setRequestHeader("Content-Type", "application/json"); xhr.send(inData); } </script> <form name="form1" > Points: <input type="number" id="points" name="points" min="1" max="10" /></br></br> Texts <input type="text" id="texts1"/></br></br> Texts <input type="text" id="texts2"/></br></br> Texts <input type="text" id="texts3"/></br></br> </form> <input type="button" onclick="submitdata()" value="按下去" /> </body> </html> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.125.42.54 ※ 文章網址: https://www.ptt.cc/bbs/Ajax/M.1421716649.A.C97.html
mrbigmouth: 光看程式碼沒有錯 不過建議不要用new Array直接用實 01/20 12:01
mrbigmouth: 字表達式[] 01/20 12:02
mrbigmouth: 如果你不用[]而用{}也是OK的 01/20 12:02
mrbigmouth: 沒有所謂的"json物件"這種東西 只有javascript物件 01/20 12:03
mrbigmouth: return JSON.parse(fArray)是錯誤的程式碼沒錯 parse 01/20 12:03
mrbigmouth: 裡面只能丟JSON格式的字串 01/20 12:03
mrbigmouth: 其他我也不懂你到底想問什麼了 01/20 12:04
ddhp: 你先搞清楚JSON的格式吧 JSON.stringify的參數是javascript 01/20 12:32
ddhp: object, 不是array 而xhr.send()裡面要丟string沒錯 01/20 12:33
mrbigmouth: JSON.stringify可以丟大部份的javascript變數 01/20 13:23
mrbigmouth: 不一定要是object 01/20 13:23
ddhp: 樓上說的沒錯 受教了<(_ _)> 01/20 14:25
MangoTW: 請老闆示範怎麼物化傳送啊 01/22 02:41
Peruheru: 老闆:我還要自己來的話我幹嘛花錢請你? 01/22 15:02
Panasonic: 只聽過序列化跟解序列化, 何謂物化請大大開示 01/24 11:02
KawasumiMai: 物化女性 01/24 14:48