如何在不使用任何jQuery插件的情况下验证以下输入框创建函数?
这就是我到目前为止所做的事情,发现从插件中使用了 parseDate 这个功能,所以这对我不起作用。
.js文件代码:
function isBirthdate(valor){
if (parseDate(valor, "dd-MM-yyyy"))
return true;
else
return false;
}
.php文件jQuery代码:
if (isBirthdate($('#fecha_nacimiento').val()) == true){
errormasg('#fecha_nacimiento',"<?php echo JText::_('COM_CSTUDOMUS_NUMERIC_TEXTO_FORMATO');?>");
return false;
}
.php文件输入框代码:
<input name="fecha_nacimiento" id="fecha_nacimiento" type="text" placeholder="<?php echo JText::_('COM_CSTUDOMUS_DATE_FORMAT'); ?>" value="<?php echo JHtml::date($userData->fecha_nacimiento, 'd-m-Y'); ?>" tabindex="6">
我正确导入.js文件,因此没有问题。
答案 0 :(得分:1)
我通过以下方式找到了解决方案:
.js文件代码:
function isValidateDate(valor){
var regexpre = new RegExp(/\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/);
if (valor.match(regexpre))
return true;
else
return false;
}
.php文件jQuery代码:
if (isValidateDate($('#fecha_nacimiento').val()) == false){
errormasg('#fecha_nacimiento',"<?php echo JText::_('COM_CSTUDOMUS_FECHA_NAC');?>");
return false;
}
答案 1 :(得分:0)
你可以使用正则表达式:
var pattern =new RegExp(/^([0-9]{2})\-([0-9]{2})\-([0-9]{4})$/);
然后测试你的价值:
if (pattern.test($('#fecha_nacimiento').val()) == true){
errormasg('#fecha_nacimiento',"<?php echo JText::_('COM_CSTUDOMUS_NUMERIC_TEXTO_FORMATO');?>");
return false;
}