我正在尝试添加输入日期字段的功能,以便当用户输入数字时,斜杠"/"会自动添加.
所以假设我有以下html:
<input type="text" id="fooDate" />
Run Code Online (Sandbox Code Playgroud)
假设我有以下javascript:
var dateField = document.getElementById("fooDate");
dateField.onkeyup = bar;
Run Code Online (Sandbox Code Playgroud)
应该bar
是什么?
到目前为止,最好的谷歌搜索结果是:
function bar(evt)
{
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 + '/';
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
另外 - 我知道在你打字的时候输入斜线.滚动它:p
不明白为什么这不起作用.我有一个简单的'input type ="date"'字段......
<input type="date" name="Date"/>
Run Code Online (Sandbox Code Playgroud)
而且每当页面加载此函数时,我都会尝试将值设置为今天的日期...
function setDate(date){
z=$(date).attr('value');
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10){dd='0'+dd}
if(mm<10){mm='0'+mm}
today = yyyy+'-'+mm+'-'+dd;
$(date).attr('value',today);
}
Run Code Online (Sandbox Code Playgroud)
我已经完成了正常的调试,我知道这个函数正在被调用,我知道变量'today'实际上确实以'yyyy-mm-dd'的形式保存今天的日期.我尝试过所有不同类型的日期格式(dd/mm/yyyy,dd-mm-yyyy等)
知道为什么这不起作用吗?