行明智验证内联jqgrid

时间:2016-06-30 09:36:55

标签: jquery validation jqgrid

在我的应用程序中,我在内联编辑模式下使用JqGrid,但我面临的问题是如何逐行验证JqGrid。

在我的JqGrid中分别有第一和第二列的开始日期和结束日期,验证必须是。

  1. 关闭日期始终大于同一行中的开始日期。
  2. 第二行开始日期中的行式验证必须大于上一行的结束日期。
  3. 如果有建议请与我联系。

1 个答案:

答案 0 :(得分:0)

以下是您问题的完整解决方案。使用事件 beforeSaveRow 确保数据有效。 如果你想玩它,可以使用jsfiddle链接。

 <table id="list"></table>
 <div id="pager"></div>

$('#list').jqGrid("getRowData",rowid);

                var val1 = jQuery('#' + rowid + '_' + 'date1').val();        
                  var val2 = jQuery('#' + rowid + '_' + 'date2').val(); 

                 var date1=new Date(val1);
                 var date2=new Date(val2);
                 if(date1>date2)
                 {
                   alert('please enter correct date from current row');
                    return false;
                 }


                  var currenttr = $("#"+rowid).closest('tr');
                 var prevtr = currenttr.prev();
                 var prevId= prevtr.attr("id");
                 // row is not first
                 if(prevId)
                 {
                     var previousRow=  $('#list').jqGrid("getRowData",prevId);  

                    var closedate=new Date(previousRow.date2);
                   if(date1 < closedate)
                    {
                      alert('please enter correct date from previous row');
                        return false;
                    }
                 }
                   return true;

                },
            });
            }

            });