问题描述
我使用下面的代码 1 来填充我的数据表。但是,当我尝试使用代码 2 访问我的数据表时,我没有收到此响应:alert( customerTable.row( this ).data() );
我在这里做错了什么?
代码 1
$(searchClientBtn).on("click",function () {
var clientLastName = $(clientLastNameTxt).val();
var clientFirstName = $(clientFirstNameTxt).val();
var clientMiddleName = $(clientMiddleNameTxt).val();
var clientDateOfBirth = $(clientDateOfBirthTxt).val();
if ( clientLastName.length == 0 && clientFirstName.length == 0 && clientMiddleName.length == 0 ) {
alert("Please enter search parameter/s to proceed.");
}
else {
var formData = new FormData();
formData.append("firstName",$("#clientFirstNameTxt").val());
formData.append("middleName",$("#clientMiddleNameTxt").val());
formData.append("lastName",$("#clientLastNameTxt").val());
formData.append("dateOfBirth",$("#clientDateOfBirthTxt").val());
//console.log(formData);
var booking = new booking();
booking.getListCustomer(formData,{
onSuccess: function (xdata) {
var customerTable = $("#customerTable").DataTable({
data: xdata.result,processing: true,columns: [
{ 'data': 'FirstName' },{ 'data': 'MiddleName' },{ 'data': 'LastName' },{ 'data': 'Birthdate' }
]
});
},onError: function (xdata) {
alert("An error occured");
}
});
$(clientSearchModal).modal("show");
}
});
代码 2
$("#customerTable").on("click","tbody tr",function () {
alert("imclicked");
alert( customerTable.row( this ).data() );
});
解决方法
需要定义变量。
$("#customerTable").on("click","tbody tr",function () {
var customerTable = $('#customerTable').DataTable(); //Here need to define variable
alert("imclicked");
alert( customerTable.row( this ).data() );
});