我开发了一个MVC C#App,这个视图有一个带有三个输入(name,DUI,ISSS)的表单和一个带有三列(name,DUI,ISSS)的jQuery Datatable,它是从数据库填充的为了向用户显示其信息,逻辑是:用户在输入字段中输入关于客户的信息(名称,DUI,ISSS),然后按添加按钮,应用程序将信息存储到数据库中,之后填充视图中的数据表,但有两种验证: 两个客户可以拥有相同的DUI既不具有ISSS值,所以我所做的是以下脚本验证:
$("#sentInfo").click(function (e) {
e.preventDefault();
var table = $('#myTable');
table.find('tbody tr').each(function (index, tr) {
if ($(tr).find("td:eq(1)").html() === $("#idDUI").val()) {
alert('DUI number already exists');
exit;
}
else if ($(tr).find("td:eq(2)").html() === $("#idISSS").val()) {
alert('the ISSS number already exists');
exit;
}
else {
$("#FormEmp").submit();
}
});
});
问题是它显示了警报消息,但(有时)将信息发送到MVC控制器,我想要的是如果DUI或ISSS已经显示在数据表中,用户可以将信息存储到数据库中你能救我吗?
我注意到每次按钮提交信息都是在ISSS验证首先运行时,并且假设DUI验证必须先运行。
jquery数据表代码如下:
function cargarTabla() {
$('#myTable').DataTable({
searching: false,
paging: true,
responsive: true,
ordering: false,
bInfo: false,
bLengthChange: false,
processing: true,
info: false,
deferRender: true,
orderMulti: false,
"ajax": {
"url": "../home/CargarTabla?id=" + noDocumento,
"type": "GET",
"datatype": "json"
},
"columns": [
{ "data": "nombres", "autoWidth": true, "orderable": false },
{ "data": "dui", "autoWidth": true, "orderable": false },
{ "data": "numero_isss", "autoWidth": true, "orderable": false },
{ "defaultContent": " <a href='#' id='select'>Modificar</a> ", "autoWidth": true, "orderable": false }
],
,HTML表格是:
<div class="table-responsive">
<table class="table table-striped table-condensed" id="myTable" style="width:100%; margin:0 auto;">
<thead>
<tr>
<th>Nombres</th>
<th>Apellidos</th>
<th>DUI</th>
<th>ISSS</th>
<th>Cargo</th>
<th>Sexo</th>
<th>Nivel</th>
<th></th>
</tr>
</thead>
<tbody></tbody>
</table>
</div>