首先我使用从java脚本传递数据到动作类但是我想在java脚本中做什么怎么办?
Jsp java脚本:
$('#nwr_fa_dob').keypress(function(event)
{
$('#nwr_fa_gender').attr('disabled',false);
var keycode = (event.keyCode ? event.keyCode :event.which);
var dob= $('#nwr_fa_dob').val();
if(keycode == '13' || keycode =='40')
{
$.ajax({
type: "POST",
dataType: "json",
url: "dob_details",
data: {dob:dob},
success: function(response)
{
$('#nwr_fa_dob').val(response.dob);
if($('#nwr_fa_dob').val()==null || $('#nwr_fa_dob').val()=='')
{
alert("You Will Give Age or DateFormat of dd-MMM-yyyy(Ex : 18-Mar-1990)");
$('#nwr_fa_dob').val('');
$('#nwr_fa_dob').focus();
}
else
{
$('#nwr_fa_dob').val(response.dob);
$('#nwr_fa_gender').focus();
}
}
});
return false;
}
if(keycode=='38'){
$('#nwr_fa_fsname').focus();
return false;
}
});
Java代码:
public String dob_fetchdate() {
try {
if (dob.length() == 11) {
Date dat = ymd.parse(dob);
if (ymd.format(dat).equals(dob)) {
dob = dob;
} else {
dob = null;
}
} else if (dob.length() == 10) {
dob = null;
} else if (dob.length() == 2) {
String date = DateNow.substring(7, 11);
String year = String.valueOf(Long.valueOf(date)
- Long.valueOf(dob));
dob = DateNow.substring(0, 7).concat(year);
} else {
dob = null;
}
return "success";
} catch (Exception ex) {
System.out.println("Dob Error =" + ex);
return "error";
}
}
答案 0 :(得分:1)
moment.js(http://momentjs.com/)肯定是javascript中日期操作的参考API。 以下是如何在您的案例中使用它的示例:
var userDateString = "30-Aug-2014";
var dateFormat = "DD-MMM-YYYY";
var myMoment = moment(userDateString, dateFormat);
if (myMoment.isValid()) {
alert ("Date is valid !");
} else {
alert ("Invalid date !");
}
它还可以告诉您输入日期的错误。
答案 1 :(得分:0)
可以使用javascript中的Regex轻松完成
var date="01-01-1944";
var pattern = /[0-9]{2}[-]{1}[0-9]{2}[-]{1}[0-9]{4}/i;
if(pattern.test(date)) {
var dateParts = date.split("-");
// You can do the range checking here
console.log(dateParts[0]);
console.log(dateParts[1]);
console.log(dateParts[2]);
}
要了解有关JS中Regex的更多信息,请按照this
进行操作同时阅读此问题的答案Regular Expression to match valid dates。