ajax提交数据

时间:2023-12-10 20:18:20
  • ajax提交数据

  • 注意:获取值可以从方法参数传过来 也可以通过jquery获取对应标签的值;同时参数要与请求的动作方法的参数一致,否则值无法映射
  1. 发送 ajax (get 方式简写)请求      注意: ajax请求如果和上次地址相同,就有可能直接读取缓存的内容,而不再次获取最新数据了,所以在请求参数后面加上时间戳

      function method(参数value)
    {
    $.get('/Control/Action?参数=' + 参数value + "&temp=" + Date.parse(new Date()), function (res) { });
    }
  2. 发送 ajax (post 方式简写)请求    

        function method(参数value)
    {
    var value = $("#Value").val();
    $.post('/Control/Action', { 参数1: value, 参数2: 参数value }, function (res)
    { });
    }
  3. 发送 ajax (post 方式)请求  
        function method(参数value)
    {
    var valueone= $("#value").val();
    var url = "/RMA/RMAExpress/Add";
    $.ajax({
    url: url,
    type: 'post',
    data: {
    value1: valueone,
    value2: 参数value
    },
    success: function (res) { },
    error:function() { }
    });
    }
  4. 发送 ajax (get方式)请求  

      function method(参数value)
    {
    var $expressNo = $("#ExpressNo").val();
    var url = "/RMA/RMAExpress/Add";
    $.ajax({
    url: url,
    type: 'get',
    success: function (res) { },
    error:function() { }
    });
    }
  5.  提交表单数据

    表单提交方法有三种,主要说下第三种
    第一种:用 form 自带属性action 提交
    第二种:用 jquery 提交:$("#formid").submit();
    第三种:用 ajax 提交
  6. 发送 ajax 请求  提交表单数据 (注意:
    • 表单提交数据与后台接收参数的相互映射是通过 name属性来实现的

    • 如果是嵌套的类 比如

      pulic class ModelOne
      {
      public string Name;
      } public class ModelTwo
      {
      public ModelOne Model{get;set;}
      public ModelTwo()
      {
      Model=new ModelOne();
      }
      } Control:
      public ActionResult Method(ModelTwo modelTwo){} 前台表单中 Name 为 Model.Name 即可以映射值到 modelTwo下的Model属性下的Name中(可以在此处找到传值的数据与格式,如下)

      ajax提交数据

    • 如果提交的表单是列表(集合)数据的话
      public class ModelOne
      {
      public string Name;
      public int Age;
      } public class ModelTwo
      {
      public List<ModelOne> List{get;set;}
      public ModelTwo()
      {
      List=new List<ModelOne>();
      }
      } Control:
      public ActionResult Method(ModelTwo modelTwo){} 前台表单中 Name 为 List[].Name 即可以映射值到 modelTwo下的List属性下的Name中(第一个)
      List[].Name,List[].Age List[].Name,List[].Age...List[n].Name,List[n].Age
      即可隐射到List集合下,同时List集合数量为n个 (参考方式如上)
    • cache作用:是否在缓存中读取数据的读取。

      cache属性是true(默认值)时:在第一次请求完成之后,如果地址和参数不变化,第二次去请求,会默认获取缓存中的数据,不去读取服务器端的最新数据。

      cache属性是flase(默认值)时:每次读取的是最新的数据。

      ajax缓存只对GET方式的请求有效,因为浏览器认为POST请求提交的内容必定有变化,所以不走缓存

    • async :https://www.cnblogs.com/yiliweichinasoft/p/3667365.html

    • ajax 各属性详解  : https://www.cnblogs.com/tylerdonet/p/3520862.html
    • data数据详解:https://www.cnblogs.com/haitao-fan/p/3908973.htmlhttps://www.cnblogs.com/tu-0718/p/8370925.html
  7. $.ajax({
    cache: true,// 其实是不需要,参考上方介绍
    type: "POST",
    url: ajaxCallUrl,
    data: $('#yourformid').serialize(),// 你的formid 注意:表单提交 这个serialize()方法是核心
    async: false,
    error: function(request) {
    alert("Connection error");
    },
    success: function(data) { }
    });