• ajax之get、post


    异步获取数据:

    <script type="text/javascript">
    /**
     * [showstatus 获取数据]
     * @return {[type]} [description]
     */
    function showstatus()
    { 
    
        /**
         * [用post方式获取数据]
         * @param  {[type]} user       [网页用户名]
         * @param  {[type]} password  [网页用户名密码]
         * @param {[type]}  type          []
         */
        $.get("/demo/web/status/class.curstatus.php",{user:"admin",password:"admin",type:0},function(data, textStatus, xhr) 
            {
                // $("#datashow").html(data);
                var statusArr = eval("("+data+")");
                var curstatusArr = statusArr['info'];  
                // console.log(curstatusArr);
    
                for (var i = 0; i < curstatusArr.length; i++) {
                     for(var key in curstatusArr[i])
                     {
                         $("#"+key+i).text(curstatusArr[i][key]);
                     }
                };          
    
            });
    
        setTimeout("showstatus()",10000);
    }
    
      $(function(){
          showstatus();
      }); 
    </script>

    异步提交数据:

    <script type="text/javascript">
    
    
      $(function() {
              $("#product_uuid").focus();
              // alert(new Date());
    
              $("#submit").submit(function ()
              {
                  // guard_form_submit.php
                  jQuery.ajax({
                      url:'guard_form_submit.php',
                      type: 'post',
                      // dataType: 'text',
                      data:$("#guard_form").serialize(),
                      success: function (data) {
    
    
                          if(data.length > 0)
                          {
                              console.log(data)
    
                            if(data == "success")
                            {
                                 // alert("hhhhhhhhh");
                                 $("#addBox").text("保存成功");
                            }
                            else
                            {
    
                                 $("#addBox").text("保存失败");
                              
                            }
                            
                              $("#product_uuid").focus();
                              $("#product_uuid").val("");
    
                      
                            $("#addBox").toggle(1000);
                            // $("#addBox").toggle(1000);
                            
    
                          }
    
                          
    
                      }
    
    
    
                  })
              })
    
    
      });    
    
    
    
    </script>

     要点:

      1、使用$.get,$.post进行参数传递时,key不能为变量,只能字符串

        

           var sParam = arr[0]+"_"+arr[1];
    
           $.post('485_info_configuration_submit.php', {"Port": arr[0],"Type":arr[1],sParam:$("#"+sParam).val()}, function(data, textStatus, xhr) {}

      sParam不能的变量值不能传递。实际的key值为sParam,而非sParam的变量值

      2、表单的序列化

        serialize()序列,转化为字符串,类似a=1&b=2&c=3

        serializeArray()序列化, json数据,后台可以直接用数组进行获取解析

       后台用Post获取到的数据分别为:

    Array
    (
        [serialForm] => returnURL=485_info_configuration.php&Port=4&Type=PowerCtrlStatus&1_PowerCtrlStatus=1&1_OutSingalStatus=0&2_PowerCtrlStatus=1&2_OutSingalStatus=0&3_PowerCtrlStatus=1&3_OutSingalStatus=0&4_PowerCtrlStatus=1&4_OutSingalStatus=1&5_PowerCtrlStatus=1&5_OutSingalStatus=0&6_PowerCtrlStatus=1&6_OutSingalStatus=0&7_PowerCtrlStatus=1&7_OutSingalStatus=1&8_PowerCtrlStatus=1&8_OutSingalStatus=0&9_PowerCtrlStatus=1&9_OutSingalStatus=1&10_PowerCtrlStatus=1&10_OutSingalStatus=0&11_PowerCtrlStatus=1&11_OutSingalStatus=1&12_PowerCtrlStatus=1&12_OutSingalStatus=0
    )
    
    


    ( [serialForm] => Array ( [0] => Array ( [name] => returnURL [value] => 485_info_configuration.php ) [1] => Array ( [name] => Port [value] => 4 ) [2] => Array ( [name] => Type [value] => PowerCtrlStatus ) [3] => Array ( [name] => 1_PowerCtrlStatus [value] => 1 ) [4] => Array ( [name] => 1_OutSingalStatus [value] => 0 ) [5] => Array ( [name] => 2_PowerCtrlStatus [value] => 1 ) [6] => Array ( [name] => 2_OutSingalStatus [value] => 0 ) [7] => Array ( [name] => 3_PowerCtrlStatus [value] => 1 ) [8] => Array ( [name] => 3_OutSingalStatus [value] => 0 ) [9] => Array ( [name] => 4_PowerCtrlStatus [value] => 1 ) [10] => Array ( [name] => 4_OutSingalStatus [value] => 1 ) [11] => Array ( [name] => 5_PowerCtrlStatus [value] => 1 ) [12] => Array ( [name] => 5_OutSingalStatus [value] => 0 ) [13] => Array ( [name] => 6_PowerCtrlStatus [value] => 1 ) [14] => Array ( [name] => 6_OutSingalStatus [value] => 0 ) [15] => Array ( [name] => 7_PowerCtrlStatus [value] => 1 ) [16] => Array ( [name] => 7_OutSingalStatus [value] => 1 ) [17] => Array ( [name] => 8_PowerCtrlStatus [value] => 1 ) [18] => Array ( [name] => 8_OutSingalStatus [value] => 0 ) [19] => Array ( [name] => 9_PowerCtrlStatus [value] => 1 ) [20] => Array ( [name] => 9_OutSingalStatus [value] => 1 ) [21] => Array ( [name] => 10_PowerCtrlStatus [value] => 1 ) [22] => Array ( [name] => 10_OutSingalStatus [value] => 0 ) [23] => Array ( [name] => 11_PowerCtrlStatus [value] => 1 ) [24] => Array ( [name] => 11_OutSingalStatus [value] => 1 ) [25] => Array ( [name] => 12_PowerCtrlStatus [value] => 1 ) [26] => Array ( [name] => 12_OutSingalStatus [value] => 0 ) ) )

    3、

         1、var sPost = 'Port:"'+arr[0]+'",Type:"'+arr[1]+'",'+sParam+':"'+$("#"+sParam).val()+'"'; 
          $.post('485_info_configuration_submit.php', {sPost}, function(data, textStatus, xhr) {}
        
        2、
          $.post('485_info_configuration_submit.php', {Port: arr[0],Type:arr[1],val:$("#"+sParam).val()}, function(data, textStatus, xhr) {}
        

    后台用POST获取到的数据分别是:

    Array
    (
        [Port] => 3
        [Type] => PowerCtrlStatus
        [val] => 1
    )
    
    
    
    Array
    (
        [sPost] => Port:"3",Type:"PowerCtrlStatus",3_PowerCtrlStatus:"1"
    )
  • 相关阅读:
    delphi Int64Rec 应用实例
    PerformEraseBackground 擦除背景(ThemeServices)
    Delphi 的 Bit
    delphi 关于 "高位" 与 "低位"
    PByte和PChar的关系
    执行控制台程序并且获得它的输出结果
    Console下Pause效果的函数
    ByteType字符串中判断是否英文
    窗体包括标题作为一个位图复制到剪贴板
    inf 启动
  • 原文地址:https://www.cnblogs.com/hzijone/p/5318558.html
Copyright © 2020-2023  润新知