jqGrid日期格式的判断示例代码(开始日期与结束日期)

  

复制代码 代码如下:

  var beginValue = "开始时间";

  var endValue = "结束时间";

  var dispaly = jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content");

  if (CheckDate(begindata, dispaly, beginValue) == false) {

  return false;

  }

  if (CheckDate(enddata, dispaly, endValue) == false) {

  return false;

  }

  //日期的验证(yyyy-mm-dd)

  function CheckDate(strDate, i, dataValue) {

  var reg = /^(/d{4})([-])(/d{2})([-])(/d{2})/;

  if (!reg.test(strDate)) {

  jAlert("第" + i + "行"+dataValue+"的日期格式不正确!/n正确格式为:2007-01-01", "提示信息");

  return false;

  }

  var ss = strDate.split("-");

  var year = ss[0];

  var month = ss[1];

  var date = ss[2];

  if (!checkYear(year, i)) {

  return false;

  }

  if (!checkMonth(month, i,dataValue)) {

  return false;

  }

  if (!checkDate(year, month, date, i,dataValue)) {

  return false;

  }

  return true;

  }

  //年份判断

  function checkYear(year, i,dataValue) {

  if (isNaN(parseInt(year))) {

  jAlert("第" + i + "行"+dataValue+"的年份输入有误,请重新输入!", "提示信息");

  return false;

  }

  else if (parseInt(year) < 1900 || parseInt(year) > 2100) {

  jAlert("第" + i + "行" + dataValue + "的年份应该在1900-2100之间!", "提示信息");

  return false;

  }

  else {

  return true;

  }

  }

  //月份判断

  function checkMonth(month, i, dataValue) {

  if (isNaN(parseInt(month))) {

  jAlert("第" + i + "行"+dataValue+"的月份输入有误,请重新输入!", "提示信息");

  return false;

  }

  if (month.substring(0, 1) == 0) {

  if (parseInt(month.substring(1, 2)) < 1) {

  jAlert("第" + i + "行"+dataValue+"的月份应该在1-12之间!", "提示信息");

  return false;

  }

  }

  else if (parseInt(month) < 1 || parseInt(month) > 12) {

  jAlert("第" + i + "行"+dataValue+"的月份应该在1-12之间!", "提示信息");

  return false;

  } else {

  return true;

  }

  }

  //日期判断

  function checkDate(year, month, date, i,dataValue) {

  var daysOfMonth = CalDays(parseInt(year), parseInt(month));

  if (isNaN(parseInt(date))) {

  jAlert("第" + i + "行"+dataValue+"的日期输入有误,请重新输入!", "提示信息");

  return false;

  }

  else if (parseInt(date) < 0 || parseInt(date) > daysOfMonth) {

  jAlert("第" + i + "行"+dataValue+"的日期应该在1-" + daysOfMonth + "之间!", "提示信息");

  return false;

  }

  else {

  return true;

  }

  }

  function CalDays(year, month) {

  var date = new Date(year, month, 0);

  return date.getDate();

  }

  function isLeapYear(year) {

  if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {

  return true;

  } else {

  return false;

  }

  }