rep*_*cus 6 javascript validation html5 google-chrome
我正在尝试对模糊的数字输入字段执行简单的checkValidity,但无法使其正常工作.这在Chrome中有效吗?例如:
<input onBlur="checkValidity()" type="number" name="x" id="x" min="64" max="2048" value=64>
Run Code Online (Sandbox Code Playgroud)
要么
<input onBlur="this.checkValidity()" type="number" name="x" id="x" min="64" max="2048" value=64>
Run Code Online (Sandbox Code Playgroud)
好像什么也没做.但是,在控制台中,
$("#x")[0].checkValidity()
Run Code Online (Sandbox Code Playgroud)
根据输入框中的当前值和上面的限制(64,2048)返回true或false.这是坏了,还是我做错了?
这是您可能希望前往的内容的演示:
<input type="number" min="64" max="256" onblur="validate(this);" />
Run Code Online (Sandbox Code Playgroud)
function validate(obj)
{
if(!obj.checkValidity())
{
alert("You have invalid input. Correct it!");
obj.focus();
}
}
Run Code Online (Sandbox Code Playgroud)
注意到我只是在这里展示这个概念 ; alert
可能会导致非常不愉快的经历,所以不要只是复制它.
使用一些浮动DIV来吸引您的用户,而不是完全阻止alert
.
我意识到这个问题是很多岁在这一点上,但如果其他人遇到它,正确的方法来实现这一OP希望似乎是用行为onblur="reportValidity()"
来代替onblur="checkValidity"
。
归档时间: |
|
查看次数: |
8840 次 |
最近记录: |