.aspx :
var JsObj = {SaveData: daveAllData};
var datastr = JSON.stringify(JsObj);
$.ajax({
async: false,
type: "POST",
url: "/WebServiceGetData.asmx/SaveAll",
data: datastr,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (responseI) {
console.log("ajax s in");
alert("儲存成功");
var x2 = JSON.parse(responseI.d);
console.log(x2);
},
error: function (response) {
console.log("fail s");
}
})
data 傳值 一定要JSON格式 所以要做上面兩行的轉換
第一行SaveData是自訂的 後面的daveAllData才是資料
第二行就是把它序列化嚕
webserver:
[WebMethod]
public string SaveAll(object SaveData)
{
var SData = JsonConvert.SerializeObject(SaveData);
dynamic stuff = JsonConvert.DeserializeObject(SData);
var x = stuff[0].fieldid;
var y = stuff[0].fieldvalue;
var x2 = stuff[1].fieldid;
var y2 = stuff[1].fieldvalue;
//----
return x;
}
接收的資料 也要做轉換 即可以把值讀出來
stuff 沒有length方法
要嘛
JArray stuff = (JArray)JsonConvert.DeserializeObject(SData);
stuff.Count 就是它的長度
不然就
foreach的方式
var x = "";
foreach (var item in stuff)
{
x += item.fieldid;
x += item.fieldvalue;
}
沒有留言:
張貼留言