【问题标题】:How to do empty field validation in datatables 1.9.4?如何在数据表 1.9.4 中进行空字段验证?
【发布时间】:2013-12-03 13:01:56
【问题描述】:

当点击“AddNew”按钮时,datatable正在创建一个空/null值的新记录。如何避免这种情况?

注意: 我在引导 portlet 框布局中使用数据表。如何在数据表中添加空值时显示警报错误消息??

【问题讨论】:

  • 使用 jquery 验证。这是Demo
  • 需要更多关于您的问题的描述
  • 这里是示例datatable example。添加新行/清除现有行值,单击保存将创建一个空记录,无需任何验证。

标签: javascript jquery twitter-bootstrap datatables


【解决方案1】:

在编辑点击事件中以link 为例,我为第一列添加了简单的空字段验证。

$('#exampleTable a.edit').live('click', function (e) {    
e.preventDefault();      
var nRow = $(this).parents('tr')[0];   
if (nEditing !== null && nEditing != nRow) {
    /*if Currently editing - but not this row - restore the old before continuing to edit mode */
    restoreRow(oTable, nEditing);
    editRow(oTable, nRow);
    nEditing = nRow;
} else if (nEditing == nRow && this.innerHTML == "Save") {
    /* else Editing this row and want to save it */
   var newEntry = $((oTable.fnGetData(nRow)).edit).attr("data-mode") == "new";
   var jqValInputs = $('input', nEditing);
   if(jqValInputs[0].value.length == 0)
   {
       alert("Name cannot be empty");
       return false;
   }
    saveRow(oTable, nEditing);
    nEditing = null;
    oTable.fnUpdate(data.id, nRow, 0, false);
 } else {
    editRow(oTable, nRow);
    nEditing = nRow;
}
});

【讨论】:

  • 警报,return false 显示为最佳选项,而不是添加更复杂的 jquery 验证。感谢您回答您的问题,它对我的​​数据表有所帮助。
  • 确保 nNew = true;在警报之后返回 false 之前。这将防止单击取消时不会创建空白行。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-16
相关资源
最近更新 更多