Php 如何在javascript中验证MM/YY的日期?
可能重复:Php 如何在javascript中验证MM/YY的日期?,php,javascript,html,validation,Php,Javascript,Html,Validation,可能重复: 我有一个表单,有很多字段,都是通过Java脚本验证的,其中一个是日期 <td>Credit Card Expiration Date</td><td>:<input class="input" type="text" name="CC_expiration_date" id="CC_expiration_date"><p>(MM/YY)</p></td> 。。。但是没有起作用 可以使用正则表达式
我有一个表单,有很多字段,都是通过Java脚本验证的,其中一个是日期
<td>Credit Card Expiration Date</td><td>:<input class="input" type="text" name="CC_expiration_date" id="CC_expiration_date"><p>(MM/YY)</p></td>
。。。但是没有起作用 可以使用正则表达式
var s = "11/12";
/^(0[1-9]|1[0-2])\/\d{2}$/.test(s);
第一部分,
(0[1-9]| 1[0-2])
验证月份部分,即值在范围01-12
内。第二部分,\d{2}
验证两位数年份。您可以使用正则表达式
var s = "11/12";
/^(0[1-9]|1[0-2])\/\d{2}$/.test(s);
第一部分,(0[1-9]| 1[0-2])
验证月份部分,即值在范围01-12
内。第二部分,\d{2}
验证两位数的年份。试试这个
对于DD-MM-yyyyy
=>var-dateReg=/^\d{2}[./-]\d{2}[./-]\d{4}$/
对于MM-YY
==>var dateReg=/^\d{2}[./-]\d{2}$/
了解正则表达式
更多详细信息请尝试此
对于DD-MM-yyyyy
=>var-dateReg=/^\d{2}[./-]\d{2}[./-]\d{4}$/
对于MM-YY
==>var dateReg=/^\d{2}[./-]\d{2}$/
了解正则表达式
更多详细信息请尝试此简单功能
function validDate(dValue) {
var result = false;
dValue = dValue.split('/');
var pattern = /^\d{2}$/;
if (dValue[0] < 1 || dValue[0] > 12)
result = true;
if (!pattern.test(dValue[0]) || !pattern.test(dValue[1]))
result = true;
if (dValue[2])
result = true;
if (result) alert("Please enter a valid date in MM/YY format.");
}
函数有效期(dValue){
var结果=假;
dValue=dValue.split('/');
变量模式=/^\d{2}$/;
如果(D值[0]<1 | | D值[0]>12)
结果=真;
if(!pattern.test(dValue[0])| |!pattern.test(dValue[1]))
结果=真;
if(d值[2])
结果=真;
如果(结果)警报(“请以MM/YY格式输入有效日期”);
}
试试这个简单的功能
function validDate(dValue) {
var result = false;
dValue = dValue.split('/');
var pattern = /^\d{2}$/;
if (dValue[0] < 1 || dValue[0] > 12)
result = true;
if (!pattern.test(dValue[0]) || !pattern.test(dValue[1]))
result = true;
if (dValue[2])
result = true;
if (result) alert("Please enter a valid date in MM/YY format.");
}
函数有效期(dValue){
var结果=假;
dValue=dValue.split('/');
变量模式=/^\d{2}$/;
如果(D值[0]<1 | | D值[0]>12)
结果=真;
if(!pattern.test(dValue[0])| |!pattern.test(dValue[1]))
结果=真;
if(d值[2])
结果=真;
如果(结果)警报(“请以MM/YY格式输入有效日期”);
}
您尝试过正则表达式吗?我尝试过生成一个正则表达式/^(\d{2})[-\/](\d{2})[-\/](\d{4})$/.exec(date);但是没用。你试过正则表达式吗?我试过做一个正则表达式/^(\d{2})[-\/](\d{2})[-\/](\d{4})$/.exec(date);但不起作用。它不会验证月数是否大于12。修复它。如果月份大于12,它将不会验证。修正它。@viany,你能改变正则表达式吗?因为如果我输入12/12,它不会给出错误/2012@HarshalMahajan正如您的问题所说,您只想验证MM/YY格式。如果您想在DD/MM/YYYY验证它,您可以使用相同的答案进行一些格式化。实际上,我希望用户应该输入12/12这样的日期,而不是12/12/2012,如果他输入了,那么应该有错误消息。您的答案在12/12可以正常工作,但在12/12不验证/2012@HarshalMahajan好啊相应地更新了。@viany,您能更改正则表达式吗?因为如果我键入12/12,它不会给出错误/2012@HarshalMahajan正如您的问题所说,您只想验证MM/YY格式。如果您想在DD/MM/YYYY验证它,您可以使用相同的答案进行一些格式化。实际上,我希望用户应该输入12/12这样的日期,而不是12/12/2012,如果他输入了,那么应该有错误消息。您的答案在12/12可以正常工作,但在12/12不验证/2012@HarshalMahajan好啊相应更新。当我输入有效日期12/12时,它会给出错误消息。当我输入有效日期12/12时,它会给出错误消息。当我输入有效日期12/12时,它会给出错误消息。您确定字符串正好是12/12
。试试/^(0[1-9]| 1[0-2])\/\d{2}$/.test(“12/12”)
。它返回true
。仍然不工作,没有在ri8上给出任何错误或错误的值。当我输入有效日期12/12时,它给出错误消息。您确定字符串正好是12/12
。试试/^(0[1-9]| 1[0-2])\/\d{2}$/.test(“12/12”)
。它返回true
。仍然不工作,没有给出ri8的任何错误或错误值。