我想在js验证失败后,去掉文本框中的光标。就是验证正确以后才能在文本框中输入信息。请高手解答。不胜感激!
<body>
载入文件三 <br>
<script type="text/javascript">
function on() {
var x="";
x = window.prompt("你的第一所学校是?", x);//输出
while (x != null && x!="abc") {
x = window.prompt("你的第一所学校是?", x);//输出
}
if (x == null)
window.alert("你选择了放弃");
else
window.alert("会的正确,请填写你的密码!");
}
</script>
修改密码:<input type="type" name="pass" onclick="on();">
</body>
你的代码我就不全部复制了,主要是改 if 语句,代码如下:
if (x == null)
{
window.alert("你选择了放弃");
document.getElementById("input1").blur();
}
else
{window.alert("会的正确,请填写你的密码!");}
==========================================
然后在你的input中加一个ID,如:<input type="type" id="input1" name="pass" onclick="on();">
我试过是可行的。追问
验证失败后,确实失去焦点了,重新点击也出现验证。但是验证成功后焦点也失去了啊 ?
追答你试过没有?
因为使文本框失去焦点的代码是放在if(null){}里面的,也就是说当你没有任何输入(验证失败)时,文本框就会失去焦点
而else{}里面,也就是验证成功时,仅仅谈出警告框。
我自己试的时候是没问题的
载入文件三 <br>
<script type="text/javascript">
function on() {
var x="";
x = window.prompt("你的第一所学校是?", x);//输出
while (x != null && x!="abc") {
x = window.prompt("你的第一所学校是?", x);//输出
}
if (x == null){
document.getElementById("pass").disabled=true;////////
window.alert("你选择了放弃");
}
else{
document.getElementById("pass").disabled=false;/////////////
window.alert("会的正确,请填写你的密码!");
}
}
</script>
修改密码:<input type="type" name="pass" id="pass" onclick="on();">/////////id
</body>追问
验证失败后是失去焦点了。但再想点就不好使了。
追答
function on() {
var x="";
x = window.prompt("你的第一所学校是?", x);//输出
while (x != null && x!="abc") {
x = window.prompt("你的第一所学校是?", x);//输出
}
if (x == null){
document.getElementById("pass").disabled=true;////////
window.alert("你选择了放弃");
document.getElementById("pass").disabled=false;/////////////
}
else{
window.alert("会的正确,请填写你的密码!");
}
}
验证成功后,焦点也失去了。还是没法实现要验证才能输入的功能。我刚学js,不太懂,麻烦你们了!
追答我修改了答案。可以的 你试下
追问验证成功后,焦点好像也消失了。
追答if (x == null){
document.getElementById("pass").disabled=true;////////
window.alert("你选择了放弃");
document.getElementById("pass").disabled=false;/////////////
}
else{
window.alert("会的正确,请填写你的密码!");
}
认真看代码 这样焦点是不会消失的
<input type="type" name="pass" onclick="on();" disabled="disabled">
如果用js控制,先给input一个ID,比如id_input, 然后:
document.getElementById("id_input").disabled="disabled";
如果在失效后想再激活它,则:
document.getElementById("id_input").disabled=undefined;
对。就是验证失败后,失去焦点!