如何做日期遮罩使用JavaScript(没有JQuery)? [英] How to do date masking using javascript (without JQuery)?

查看:100
本文介绍了如何做日期遮罩使用JavaScript(没有JQuery)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

 <![CDATA [
var $ = jQuery;
String locale = getUserLocale(); (!isEmptyNull(locale)&& locale.equals(zh_CN)){
$(document).ready(function(){

input [id * ='text12'])。mask('9999年99月99日');
}
else {
$(input [id * ='text12 '])。mask('99 / 99/9999');
}
});
]]>

{pc_Test.dateDisplayFormat}>< / p:calendar> ;

如果区域设置等于'zh_CN',屏蔽将是'9999年99月99日'。否则,它会是 '99 / 99/9999'

当我删除if else命令时,它可以工作。但是,如果我将if else命令放在里面,它不起作用。

如何解决它?



< dateplaceholder =dd / mm / yyyyonkeyup =var v = this.value; if(v.match(/ ^ \d {2} $ /)!== null){this.value = v +'/';} else if(v.match(/ ^ \d {2} \ / \d {2} $ /)!== null){this.value = v +'/';} maxlength =10>< input type =textname =dateplaceholder =mm / dd / yyyyonkeyup =var v = this.value; if(v.match(/ ^ \ (v.match(/ ^ \d {2} \ / \d {2} $ / )!== null){this.value = v +'/';}maxlength =10 >< input type =textname =dateplaceholder =yyyy / mm / ddonkeyup =var v = this.value; if(v.match(/ ^ \d {4} $ /)!== null){this.value = v +'/'; } else if(v.match(/ ^ \d {4} \ / \d {2} $ /)!== null){this.value = v +'/'; }maxlength =10>< input type =textname =dateplaceholder =yyyy年mm月ddonkeyup =var v = this.value; if(v.match(/ ^ \d {4} $ /)!== null){this.value = v +'年'; } else if(v.match(/ ^ \d {4}年\d {2} $ /)!== null){this.value = v +'月'; }maxlength =10>

希望这是你正在寻找!


<![CDATA[
    var $ = jQuery;
    String locale = getUserLocale();
    $(document).ready(function() {

        if (!isEmptyNull(locale) && locale.equals("zh_CN")) {
            $("input[id*='text12']").mask('9999年99月99日');
        }
        else {
            $("input[id*='text12']").mask('99/99/9999');
        }
    });
]]>

<p:calendar id="text12" styleClass="calendar" maxlength="10" pattern="#
{pc_Test.dateDisplayFormat}"></p:calendar>

If the locale is equal to 'zh_CN', the masking would be '9999年99月99日'. Otherwise, it would would be '99/99/9999'.
When I remove the if else command, it works. But if I put the if else command inside, it doesn't work.

How do I solve it?

解决方案

Check out the below code..

<input
    type="text"
    name="date"
    placeholder="dd/mm/yyyy"
    onkeyup="
        var v = this.value;
        if (v.match(/^\d{2}$/) !== null) {
            this.value = v + '/';
        } else if (v.match(/^\d{2}\/\d{2}$/) !== null) {
            this.value = v + '/';
        }"
    maxlength="10"
>

<input
    type="text"
    name="date"
    placeholder="mm/dd/yyyy"
    onkeyup="
        var v = this.value;
        if (v.match(/^\d{2}$/) !== null) {
            this.value = v + '/';
        } else if (v.match(/^\d{2}\/\d{2}$/) !== null) {
            this.value = v + '/';
        }"
    maxlength="10"
>
<input
    type="text"
    name="date"
    placeholder="yyyy/mm/dd"
    onkeyup="
        var v = this.value;
        if (v.match(/^\d{4}$/) !== null) {
            this.value = v + '/';
        } else if (v.match(/^\d{4}\/\d{2}$/) !== null) {
            this.value = v + '/';
        }"
    maxlength="10"
>
<input
    type="text"
    name="date"
    placeholder="yyyy年mm月dd"
    onkeyup="
        var v = this.value;
        if (v.match(/^\d{4}$/) !== null) {
            this.value = v + '年';
        } else if (v.match(/^\d{4}年\d{2}$/) !== null) {
            this.value = v + '月';
        }"
    maxlength="10"
>

Hope this is what you are looking for!

这篇关于如何做日期遮罩使用JavaScript(没有JQuery)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆