前端代码:
这里使用input作为录入框拼接到单元格里面的,连个方法onchange和onkeyup看自己需要可以删掉。
var retHtml = "<input id=\"pquan" + row.rownums + "\" autocomplete=\"off\" data-bind=\"" + row.rerid + "\" data-value=\"" + value + "\" class=\"form-control\" value=\"" + value + "\" οnchange='onchange1(\"" + row.rownums + "\")' style=\"text-align:left;\" οnkeyup='onkeyup1(this)'/>";
var objlist=“”;//数据集合,作为参数传到后台控制器
$('#gridTable tr').each(function (ii) {
//列从1开始
if (ii > 0) {
var rowid = $("#pquan" + ii).attr("data-bind");//id,有一些特殊值用data-bind存储了
var a1= $(this).find('td:eq(4) input').val();// 数量
var a2= $(this).find('td:eq(5) input').val();// 单价
objlist += "" + rowid + "," + a1+ "," + a2+ ";";
}
});
ys.ajax({
url: '请求地址',
type: "get",
data: {
objlist: objlist
},
success: function (obj) {
ys.msgSuccess(obj.Message);
}
});
后台控制器代码:
string str = Request.Query["objlist"];//这里说明一下是get提交方式,post请用Request.Form["objlist"];
string[] strarr;
if (str.Length > 1)
{
strarr = str.Split(";");
strarr = strarr.Distinct().Where(w => !string.IsNullOrEmpty(w)).ToArray();//过滤掉空行
strarr = strarr.Distinct().Where(w => !w.Contains(",,,")).ToArray();//过滤掉其他没用行
for (int i = 0; i < strarr.Length; i++)
{
//获取到具体的值了,a1,a2
string a1= strarr[i].Split(",")[0];
string a2= strarr[i].Split(",")[1];
}
}