mvc,model存在主子表关系,同时在编辑界面中的明细信息进行删除的方法
function Delete(i, BillName, Method) {
var Ratify = $("#btnRatifyState").val();
if (Ratify == "撤销审核")
return;
var aaa = BillName;
var bbb = Method;
var OldID; //旧ID属性
var NewID; //新ID属性
var OldName; //旧Name属性
var NewName;//新Name属性
var OldIndex;//旧索引
var NewIndex;//新索引
var OldInputID; //旧input标签ID属性
var NewInputID;//新input标签ID属性
var OldTrID;//旧trID属性
var NewTrID;//新trID属性
var tb;
var TableTrLength; //talbede
var rowNum; //talbede tr 总行数
var Input = i.id;
var array = Input.split("_"); //分割
//id的索引
OldIndex = array[1];
debugger;
var SysNoValue = $("#SysNo_" + OldIndex).val();
if (confirm("您确定要删除此条记录吗?") == true) {
//如果SysNo有值得话就直接删除(保存之后)
if (SysNoValue != "") {
debugger;
var url = "/" + BillName + "/" + Method;
$.ajax({
type: 'POST',
async: false, //true 是异步 false:
cache: false,
url: url,
data: "id=" + SysNoValue,
success: function (data) {
debugger;
if (data == "ok") {
$("#delete_" + OldIndex + "").remove();
alert("删除成功!");
}
else {
alert("删除失败!");
}
}
})
} else {
//如果SysNo为空时,说明单据未保存(删除当前行)
$("#delete_" + OldIndex + "").remove();
}
//删除之后重新将TABLE中的tr的id 删除的button的id,input的id,name重新赋值
//找到id所对应的table
tb = document.getElementById('TableAdd');
//此table所有的cell之和
TableTrLength = document.getElementById("TableAdd").rows[1].cells.length;
//获取table的总行数(循环时时从0开始)
rowNum = tb.rows.length;
//循环table的每一行
for (var i = 1; i <= rowNum - 1; i++) {
//循环每一行的每一个单元格
for (var j = 0; j < TableTrLength; j++) {
//每一行减1(行-1)就是新的ID索引(组成新的ID)
NewIndex = parseInt(i) - parseInt(1);
//判断每一行每个单元格是否存在input标签
var NoInput = tb.rows[i].cells[j].getElementsByTagName("INPUT").length;
//判断是否存在img标签
var imgLength = tb.rows[i].cells[j].getElementsByTagName("img").length;
if (imgLength > 0) {
var imgID = tb.rows[i].cells[j].getElementsByTagName("img")[0].id;
//分割input
var arrayID = imgID.split("_");
var imgID_ = arrayID[0];
//拼接新的imgID
var newImgID = imgID_ + "_" + NewIndex;
//修改tr的ID
$("#" + imgID + "").attr("id", "" + newImgID + "");
}
//如果不存在直接终止
if (NoInput == 0)
continue;
//找到inputID
OldInputID = tb.rows[i].cells[j].getElementsByTagName("INPUT")[0].id;
//找到inputName
OldName = tb.rows[i].cells[j].getElementsByTagName("INPUT")[0].name;
//如果nameValue存在值的然后进行修改
if (OldName != "") {
//前一半
var arrayNameZ = OldName.split("[");
var IptNameZ = arrayNameZ[0];
//后一半
var arrayNameY = OldName.split("]");
var IptNameY = arrayNameY[1];
//组成新的Name
NewName = IptNameZ + "[" + NewIndex + "]" + IptNameY;
//根据ID修改Name的属性
$("#" + OldInputID + "").attr("name", "" + NewName + "");
}
//根据旧的OldInputID修改inputID
//修改每个Input的ID
var arrayID = OldInputID.split("_")
//获取iD的前部分的名称
IptID = arrayID[0];
//拼接新的Inputid
NewInputID = IptID + "_" + NewIndex;
//修改InputID
$("#" + OldInputID + "").attr("id", "" + NewInputID + "");
debugger;
//如果INput有两个
if (NoInput > 0) {
for (var m = 1; m < NoInput; m++) {
//找到第二个inputID
var OldInputIDs = tb.rows[i].cells[j].getElementsByTagName("INPUT")[m].id;
//分割input
var arrayID = OldInputID.split("_")
//获取iD的前部分的名称
var IptIDs = arrayID[0];
//拼接新的Inputid
var NewInputIDs = IptIDs + "_" + NewIndex;
//修改InputID
$("#" + OldInputIDs + "").attr("id", "" + NewInputIDs + "");
}
}
//找到每一行tr的ID
OldTrID = tb.rows[i].id;
var arrayTr = OldTrID.split("_");
var trid = arrayTr[0];
//拼接新的trID
NewTrID = trid + "_" + NewIndex;
//修改tr的ID
$("#" + OldTrID + "").attr("id", "" + NewTrID + "");
//判断是否存在img标签
var imgLength = tb.rows[i].cells[j].getElementsByTagName("img").length;
if (imgLength > 0) {
var imgID = tb.rows[i].cells[j].getElementsByTagName("img")[0].id;
//分割input
var arrayID = imgID.split("_");
var imgID_ = arrayID[0];
//拼接新的imgID
var newImgID = imgID_ + "_" + NewIndex;
//修改tr的ID
$("#" + imgID + "").attr("id", "" + newImgID + "");
}
}
}
} else {
return false;
}
}