편집 및 삭제 링크가있는 데이터 테이블에 여러 행을 추가하고 있습니다. 제 3 행을 삭제 한 후 그 시간에 5 행을 편집하면 삭제라는 onclick 이벤트에 작성된 함수라는 편집 링크가 편집됩니다. 링크. 여기에 코드 추가, 수정 및 삭제 기능이 추가되었습니다.링크 작업이 올바르지 않습니다.
function addproduct() {
if (document.getElementById("p_barcode").value == "" || wrongdata == false) {
alert("Please Enter valid value of Barcode..!!!");
return false;
} else {
var barcode = document.getElementById("p_barcode").value;
var quantity = document.getElementById("p_qnty").value;
var grossamount = document.getElementById("p_grossamount").value;
var basetax = document.getElementById("p_basetax").value;
var additionaltax = document.getElementById("p_additionaltax").value;
var discount = document.getElementById("p_discount").value;
var netamount = document.getElementById("p_netamount").value;
var paidamount = document.getElementById("p_paidamount").value;
var data = barcode + "," + quantity + "," + grossamount + "," + basetax + "," + additionaltax + "," + discount + "," + netamount + "," + paidamount;
alert(data);
var productdata = data.split(',');
var table = $('#addpurchase').DataTable();
table.row.add(
[
productdata[0],
productdata[1],
productdata[2],
productdata[3],
productdata[4],
productdata[5],
productdata[6],
productdata[7],
productdata[8] = "<a href='#' onclick='return rowedit();'> Edit </a>/<a href='#' onclick='return rowdelete();'> Delete </a>"])
.draw();
document.getElementById("p_barcode").value = "";
document.getElementById("p_qnty").value = "1";
document.getElementById("p_grossamount").value = "";
document.getElementById("p_basetax").value = "";
document.getElementById("p_additionaltax").value = "";
document.getElementById("p_discount").value = "";
document.getElementById("p_netamount").value = "";
document.getElementById("p_paidamount").value = "";
return false;
}
}
function rowdelete() {
var table = $('#addpurchase').DataTable();
$('#addpurchase tbody').on('click', 'a', function() {
var tr = $(this).closest("tr");
var rowindex = tr.index();
//alert(rowindex);
table.row(rowindex).remove().draw(false);
});
return false;
}
function rowedit() {
var table = $('#addpurchase').DataTable();
$('#addpurchase tbody').on('click', 'a', function() {
var tr = $(this).closest("tr");
var rowindex = tr.index();
alert(rowindex);
var fetchdata = table.row(rowindex).data();
alert(table.row(rowindex).data());
document.getElementById("p_barcode").value = fetchdata[0];
document.getElementById("p_qnty").value = fetchdata[1];
document.getElementById("p_grossamount").value = fetchdata[2];
document.getElementById("p_basetax").value = fetchdata[3];
document.getElementById("p_additionaltax").value = fetchdata[4];
document.getElementById("p_discount").value = fetchdata[5];
document.getElementById("p_netamount").value = fetchdata[6];
document.getElementById("p_paidamount").value = fetchdata[7];
table.row(rowindex).remove().draw(false);
});
return false;
}
은 무엇 당신이 당신의 코드를 변경하고 시도해야 질문? – jfriend00
당신의 문제를 분명히 설명해 줄 수 있습니까? – Outlooker
내 datatable에 8 행이 있다고 가정합니다. 먼저 테이블에서 5 행을 지우고 8 행의 편집 링크를 클릭하면 편집 링크의 onclick 이벤트 함수가 호출되지 않고 행이 데이터 테이블에서 삭제됩니다. 데이터 테이블의 링크 1 열을 편집하고 삭제합니다. – user3045691