我们在做一些实际的项目的时候有时会需要在页面中同时传递多给值给后台处理,这里就可以用到构造函数来实现了。
首先这里:
//声明构造函数
function Indentid(IndentID) {
this.IndentID = IndentID
}
需要声明一个构造函数来保存需要存储的值,
然后
if (Kai == "hebing") {
$.ajaxSettings.async = false;//取消异步
var hebing = [];//声明数组
for (var i = 0; i < check.length; i++) {
var e = new Indentid();
e.IndentID = check[i].value;
hebing.push(e);
}
$.post("hebingdingdan", From, function () {
})
$.post("Hebingdingdanshu", { List: hebing }, function (o) {
if (o.State) {
layer.alert(o.Text);
Tbdingdan.refreshPage();
$("#mo").click();
} else {
layer.alert(o.Text);
}
});
}
} else {
layer.alert("请填写完整!!");
}
声明一个数组 然后使用循环把数据放进前面声明好的构造函数里面进行提交,这里本人提交两次第一个是一些数据值,这里是无关的 主要看下面的那个提交,提交过去后台后我们就要这样处理了
//5. 创建一个实体类,用于接收传递过来的ID数组
//构造函数
public class IndentIDarr
{
//6 .封装一个字段(与JavaScript创建的构造函数的字段一样)
public string IndentID { get; set; }
}
在后台创建一个实体类,用来接收传过来的数组 再封装一个字段和JavaScript那里函数的字段一样,
public class IndentIDarr
{
//6 .封装一个字段(与JavaScript创建的构造函数的字段一样)
public string IndentID { get; set; }
}
然后以泛型对象接收传递过来的构造函数数组对象
public ActionResult Hebingdingdanshu(List<IndentIDarr> List)
{
foreach (IndentIDarr item in List)
{
int IndentID = Convert.ToInt32(item.IndentID); //转换类型 string转化成一个int32位
}
}
使用foreach循环遍历每个对象值 然后转换成int型就可以进行自己想要的操作了。
用法是比较简单的 希望对看到的人有所帮助,