ajax提交数据
- 注意:获取值可以从方法参数传过来 也可以通过jquery获取对应标签的值;同时参数要与请求的动作方法的参数一致,否则值无法映射
-
发送 ajax (get 方式简写)请求 注意: ajax请求如果和上次地址相同,就有可能直接读取缓存的内容,而不再次获取最新数据了,所以在请求参数后面加上时间戳
function method(参数value)
{
$.get('/Control/Action?参数=' + 参数value + "&temp=" + Date.parse(new Date()), function (res) { });
} -
发送 ajax (post 方式简写)请求
function method(参数value)
{
var value = $("#Value").val();
$.post('/Control/Action', { 参数1: value, 参数2: 参数value }, function (res)
{ });
} -
发送 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() { }
});
} -
发送 ajax (get方式)请求
function method(参数value)
{
var $expressNo = $("#ExpressNo").val();
var url = "/RMA/RMAExpress/Add";
$.ajax({
url: url,
type: 'get',
success: function (res) { },
error:function() { }
});
} -
提交表单数据
表单提交方法有三种,主要说下第三种
第一种:用 form 自带属性action 提交
第二种:用 jquery 提交:$("#formid").submit();
第三种:用 ajax 提交
-
发送 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中(可以在此处找到传值的数据与格式,如下) - 如果提交的表单是列表(集合)数据的话
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.html,https://www.cnblogs.com/tu-0718/p/8370925.html
$.ajax({
cache: true,// 其实是不需要,参考上方介绍
type: "POST",
url: ajaxCallUrl,
data: $('#yourformid').serialize(),// 你的formid 注意:表单提交 这个serialize()方法是核心
async: false,
error: function(request) {
alert("Connection error");
},
success: function(data) { }
});