麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

jQuery調用Webservice傳遞json數組的方法

2019-11-20 09:17:22
字體:
來源:轉載
供稿:網友

本文實例講述了jQuery調用Webservice傳遞json數組的方法。分享給大家供大家參考,具體如下:

Jquery由于提供的$.ajax強大方法,使得其調用webservice實現異步變得簡單起來,可以在頁面上傳遞Json字符串到Webservice中,Webservice方法進行業務處理后,返回Json對象給頁面,讓頁面去展現。

這一切都非常的簡單,今天要學習的并非這些。我們在實際處理業務過程中,會發現往往頁面要傳遞給webservice 的并非一個或多個字符串,有時候需要傳遞的是一個組合數據,如這樣的一組數據:

復制代碼 代碼如下:
{'Employee': [{'name':'John','sex':'man','age':'25'},{'name':'Tom','sex':'man','age':'21'}]}

客戶端將這樣的Json字符串作為$.ajax方法的data參數是沒有問題的,然而,服務端的webservice該如何去寫接收參數卻成為了一個問題。在百度、谷歌了一番后,只發現提問的卻沒有回答的。索性還是自己去研究吧,發現其實Employee對象首先是一個數組,其次數組的每一項都是一個Dictionary<string,string>字典類型。于是我嘗試在服務端使用Dictionary<string,string>[] Employee來接收客戶端傳遞的參數,一切如我所料,成功!

客戶端代碼如下:

//JQuery 調用webService導入數據function LoadData() {    var studentData = CollectionData();    $.ajax({      url: "ImportDataService.asmx/ImportStu",      type: "post",      contentType: "application/json;charset=utf-8",      dataType: "json",      data: "{'students':[{'name':'KoBe ','sex':'boy','age':'20'},{'name':'Mary','sex':'girl','age':'19'}]}",      success: function(result) {        alert(result.d);      },      error: function(e) {        alert(e.responseText);      }    });}

服務端代碼如下:

/// <summary>////// </summary>/// <param name="students"></param>/// <returns></returns>[WebMethod][ScriptMethod(ResponseFormat=ResponseFormat.Json)]public string ImportStu(Dictionary<string,string> []students){  if (students.Length == 0)  {    return "沒有任何數據!";  }  else  {    try    {      foreach (Dictionary<string, string> stu in students)      {        //構造一個新的Student對象。        Student student = new Student();        //為新構造的Student對象屬性賦值。        foreach (string key in stu.Keys)        {          switch (key)          {            case "name":              student.Name = stu[key];              break;            case "sex":              student.Sex = stu[key];              break;            case "age":              int age;              if (Int32.TryParse(stu[key], out age))              {                student.Age = age;              }              else              {                student.Age = 0;              }              break;            default:              break;          }        }      }      return "導入學生成功!";    }    catch    {      throw new Exception("導入學生失敗!");    }  }}

需要注意的是,服務端參數名需要和客戶端Json數組的key值相同,如上代碼中,參數名都為students。

更多關于jQuery相關內容感興趣的讀者可查看本站專題:《jQuery擴展技巧總結》、《jQuery常用插件及用法總結》、《jQuery拖拽特效與技巧總結》、《jQuery表格(table)操作技巧匯總》、《jquery中Ajax用法總結》、《jQuery常見經典特效匯總》、《jQuery動畫與特效用法總結》及《jquery選擇器用法總結

希望本文所述對大家jQuery程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日本教室三级在线看 | 在线观看视频亚洲 | 韩日黄色片 | 91在线视频网址 | 中文字幕在线视频网站 | 久久久久久久久久美女 | 久久金品 | jizzjizzjizz少妇| 日本免费一区二区三区四区 | 欧美精品1区 | 在线观看麻豆 | 双性精h调教灌尿打屁股的文案 | 亚洲国产高清一区 | 国产一区二区三区四区精 | 视频一区国产精品 | 久久草在线观看视频 | 日韩中文字幕三区 | 中文字幕亚洲情99在线 | 久久91久久 | 亚洲免费高清 | 免费看性xxx高清视频自由 | 日日草夜夜草 | 成人羞羞国产免费游戏 | 久草视频国产在线 | 精品一区二区在线观看 | 黄色国产在线观看 | 国产九色在线观看 | 鲁丝一区二区二区四区 | 亚洲va久久久噜噜噜久久男同 | 久久免费视频1 | 欧美在线观看视频网站 | 成人福利视频在线 | fc2成人免费人成在线观看播放 | free性欧美hd另类 | 欧美成年人视频在线观看 | 亚洲性在线视频 | jizzyouxxxx| 成人国产在线看 | 国产在线播放一区二区 | 亚洲精品一区二区三区免 | 国产88久久久国产精品免费二区 |