$.ajax方法(傳遞json資料)

來源:互聯網
上載者:User

前台

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" >
  3. <head>
  4.     <title>無標題頁</title>
  5.     <style type="text/css">
  6.         .show{ display:block;}
  7.         .hide{ display:none;}
  8.     </style>
  9.     <script type="text/javascript" src="jquery/jquery-1.2.6.js"></script>
  10.     <script type="text/javascript">
  11.         
  12.         //這個方法把ajax方法封裝一下,方便調用。
  13.         function myajax(){ 
  14.             //var obj=jsonData();
  15.             $.ajax({
  16.                 type:'post',
  17.                 url:'ajax.aspx',
  18.                 data:jsonData(),//可以直接加一個函數名。
  19.                 dataType:'json',
  20.                 beforeSend:beforecall,
  21.                 success:callback
  22.             });
  23.         }
  24.         //封裝json資料,為了代碼清晰
  25.         function jsonData(){
  26.             var jsonStr="({";
  27.             jsonStr+="/"name/":";
  28.             jsonStr+="/"tree/"";
  29.             jsonStr+=",";
  30.             jsonStr+="/"id/":";
  31.             jsonStr+="/"123/"";
  32.             jsonStr+="})";
  33.             return eval(jsonStr);//關鍵在於轉換。
  34.         }
  35.         //調用前方法,不成功
  36.         function beforecall(){
  37.             $('#wait').addClass("show").append('調出中...');
  38.             //alert('');//測試是否調用
  39.         }
  40.         //回呼函數
  41.         function callback(data){
  42.             $('#response').append(data.name+data.id);
  43.             $('#wait').css("display","none");
  44.         }
  45.         //onload()事件
  46.         $(function(){
  47.             $('#confirm').click(myajax);
  48.         })
  49.     </script>
  50. </head>
  51. <body>
  52.     <div id="confirm">點擊</div>
  53.     <div id="response">接收後台資料</div>
  54.     <div id="wait" class="hide">hello</div>
  55. </body>
  56. </html>

後台

  1.     protected void Page_Load(object sender, EventArgs e)
  2.     {
  3.         Hashtable ht = new Hashtable();
  4.         string name = Request.Params["name"].ToString();
  5.         string birth = Request.Params["birthday"].ToString();
  6.         if (!string.IsNullOrEmpty(name) && !string.IsNullOrEmpty(birth))
  7.         {
  8.             //Response.ContentType = "Application/json";
  9.             //Response.Write(CreareJson("this is ok!", 1, name, birth));
  10.             ht.Add("info", "成功了");
  11.             ht.Add("sta", "狀態");
  12.             ht.Add("name", name);
  13.             ht.Add("birth", birth);
  14.             Response.Write(CreateJsonParams(ht));
  15.         }
  16.         Response.End();
  17.     }
  18.     private string CreateJsonParams(Hashtable items)
  19.     {
  20.         string returnStr = "";
  21.         foreach(DictionaryEntry item in items)
  22.         {
  23.             returnStr += "/"" + item.Key.ToString() + "/":/"" + item.Value.ToString() + "/",";
  24.         }
  25.         return "{" + returnStr.Substring(0,returnStr.Length-1) + "}";
  26.     }
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.