js判断input输入值,不符就返回原来的值和焦点

怎么写?我用$("input").live("keyup",function()来写,输入可以判断,但是提示错误后,输入框里还是用户输入的错误的字符,怎么让input提示完错误后返回原来的值?
输入框原来有值的。比如:
<input id="cart_count" value='11'>

当用户在输入框里输入的时候,判断输入的是不是数字,不是就提示错误。
这个可以做到,但是怎么在提示错误后让输入框返回原来的值11呢?

这个问题关键点在于取不到原来input的值。

表单提交值是提交对象的value属性的值,可以将原来的值存在一个自定义的属性里面,在验证不通过的时候将该值取出并赋值给该对象。当然也可以先将原来的值存在其他的地方只要能取到就好。

<input type="text" id="text" value="11" oldvalue="11" />
<script type="text/javascript">
$("#text").live("keyup",function(){//绑定keyup事件
_thisvalue = $(this).val()//获取id为text的value(值)
if(isNaN(_thisvalue)){//判断id为text的值是不是数字
alert("不是数字");//不是数字弹出提示
$(this).val($(this).attr("oldvalue"));//获取id为text的oldvalue属性(旧的值)并改变当前的值为旧的值
}   
});
</script>

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-12-29
在页面加载完成时先赋给变量备调
列如:
$(document).ready(function()
{
old_cart_count=$("#cart_count").val;
})本回答被提问者采纳

有4个input标签value值分别不同,用JS实现当文本框失去焦点是没有输入...
<input type="text" value="default1" onblur="if(!this.value)this.value='default1'"\/><input type="text" value="default2" onblur="if(!this.value)this.value='default2'"\/><input type="text" value="default3" onblur="if(!this.value)this.value='default3'"\/><input type=...

js特效input框获取焦点与离开
先判断input的value是否为空,再设置它的值。不过如果你要实现那样的效果,建议你用placeholder属性可以直接使用实现,不需要设置获取焦点,离开焦点等事件。<input type="text" name="uname" placeholder="请输入你想搜的关键词">

JS中如何判断一元素是否获得焦点?
1、首先,打开html编辑器,新建html文件,例如:index.html。2、在index.html的<script>标签中,输入js代码:('body').append(document.activeElement.id == "a" ? 'true': 'false');('#a').focus(function () { ('body').append(document.activeElement.id == "a" ? 'true': 'false')...

js中<input\/>如何获得焦点?
用自带的focus()就可以了 利用js中<input\/>实现文本框默认获取输入焦点完整代码实现如下:<html> <head> <meta http-equiv="Content-Type" content="text\/html; charset=ISO-8859-1"> <title>Insert title here<\/title> <script type="text\/javascript"> \/\/输入框获取鼠标焦点 function autoFoc...

JS表单代码获得焦点自动清除提示,失去焦点恢复默认提示
}; keyWord.onblur = function() { keyWord.value = '搜索您感兴趣的资源'; };}<\/script>第二个问题之所以没反应是因为你的提交按钮的type写错了,应该是 <input name=\\"提交\\ "type=\\"submit\\" class=\\"go backcolr\\" value=\\"GO\\" \/>希望对你有所帮助!

js 判断一个文本框是否获得焦点
\/\/ 可以用document.activeElement判断 \/\/ document.activeElement表示当前活动的元素 \/\/ 查找你要判断的文本框 var myInput = document.getElementById('myInput');if (myInput == document.activeElement) { alert('获取焦点');} else { alert('未获取焦点');}一. 基本概念 JavaScript一种直译式...

js实现一个input填一个数字,自动到下一个input里
" maxlength="10" type="text" value='' onkeyup='document.getElementById("456").focus()'> <input id="456" name="456" size="30" style="width: 50; font-size:36px;" maxlength="10" type="text" value=''> ---

<input>输入框当其值改变如何调用js处理。值是通过其他的方法改变的输...
如果你赋值的是用js赋的就可以模拟一个onchange 在js赋值之后,如:document.getElementById("myinput").value="myvalue";document.getElementById("myinput").fireEvent("onchange");

有多个输入框,失去焦点就计算平均值的js代码
("input").on("blur",function(){ var inputs=$("[type='text']"); var count=0; for(var i=0;i<inputs.length;i++){ count+=parseInt(inputs[i].val()); } var avg=count\/inputs.length; alert(avg); });

通过js实现得到焦点时文本框清空,失去焦点时又显示默认文字,值发生改 ...
'; } }; input.onblur = function () { if(!this.value) { this.value = this.getAttribute('placeholder'); } input.blur(); };} html5中提供了placeholder属性来做这个事情,所以我们可以先考虑使用浏览器提供的方法。如果不支持这个属性,那么用js来实现。

相似回答