js $(":radio") 居然有错误说 溢出 $(":radio").each(function(){ ………… });运行到 $(":radio") 时出错 显示:jquery 先用的1.7.2 后来换乘 1.8.2 1.9 版本都不行。请大侠们指导 jquery$()radio 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 里面的代码可能有无限循环,无限递归之类,你把each里面function内的代码都注释掉看看是不是还溢出不就知道了 方法里是:$(":radio").each(function(){ if (regExp.test(this.id) && this.value == inputValue) { this.checked = true; isExist = true; return false; } });即使把方法里的代码注释掉 也不行。曾写成这样的:var radioArray=$(":radio");或var radioArray=$(":input[type='radio']");最后都是同样的错误。 你那运行 var radioArray=$(":radio"); 这句代码可以通过吗???? 把所有的js代码全部注释了, 只留一个引用jquery的js文件, 外加一条js语句:var r = $(":radio");如果有错再说. 在 html中 为一个文本框 添加了 改变值就触发的事件$("#txtbox").bind("propertychange",txt_radio_onblur);而在这个txt_radio_onblur()方法中有这么句话 $(this).addClass("error"); 给该文本框添加样式。 可能就是这样使方法不断重复运行了, 造成死循环了。 致使$(":radio")出错了吧 把$(this).addClass("error"); 注释掉就不在出现溢出的错误了。可是要求在文本框内输过超出范围的数字,就要改变文本框的样式,样式还是要加的,这可怎么办啊????? $("#txtbox").unbind("propertychange");//移除事件$(this).addClass("error"); //添加样式$("#txtbox").bind("propertychange",txt_radio_onblur);//添加事件试试看 你原来的错误的代码类似下面:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> .error{ background-color:Red; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#txtbox").bind("propertychange", txt_radio_onblur); }); function txt_radio_onblur() { var v =$.trim($("#txtbox").val()); //如果不是数字, 而且没有加上错误样式 if (isNaN(v)) { $("#txtbox").addClass("error"); } } </script></head><body> <div> <span>请输入数字:</span> <input id="txtbox" type="text" /> </div></body></html>正确的做法应该如下面:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> .error{ background-color:Red; } </style> <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#txtbox").bind("keyup", function () { var v = $.trim($(this).val()); //如果不是数字, 而且没有加上错误样式 $(this).toggleClass( "error", v!="" && isNaN(v) ); }); }); </script></head><body> <div> <span>请输入数字:</span> <input id="txtbox" type="text" /> </div></body></html>propertychange事件非常敏感, 而且浏览器兼容性也不好 以后要尽量少用 propertychange 了,改用 keyup 或 keydown 比较好。那在这两个地方有什么明显的区别吗???1)//如果不是数字, 而且没有加上错误样式 if (isNaN(v)) { $("#txtbox").addClass("error"); }2)//如果不是数字, 而且没有加上错误样式 $(this).toggleClass( "error", v!="" && isNaN(v) );(这里 只是多一个空字符判断???) 关于Node.js的问题? 如何判断一个div中的img全部加载完毕? 浏览器字体变更,2个图片的相对位置变了,能不让变么 WScript.Shell打开本地程序 路径中有空格和中文怎么处理? parseFloat的问题 请教正则: /<(.*?)>/gi 在ie5.0下为何出错? 能不能在按扭上设置一个时间让他自动按下执行呢? 如何用javascript取得一个网页在屏幕上的位置?在线等,谢谢! 已经导入js文件了,但是其功能无法实现 js jq实现安卓手机上的 触碰事件和长按事件,两者要共存 获取<p>标签内的文本 js这个object该如何判断是否不为空才放入值?
方法里是:
$(":radio").each(function(){
if (regExp.test(this.id) && this.value == inputValue) {
this.checked = true;
isExist = true;
return false;
}
});即使把方法里的代码注释掉 也不行。曾写成这样的:
var radioArray=$(":radio");
或
var radioArray=$(":input[type='radio']");
最后都是同样的错误。
外加一条js语句:
var r = $(":radio");如果有错再说.
在 html中 为一个文本框 添加了 改变值就触发的事件$("#txtbox").bind("propertychange",txt_radio_onblur);
而在这个txt_radio_onblur()方法中有这么句话 $(this).addClass("error"); 给该文本框添加样式。
可能就是这样使方法不断重复运行了, 造成死循环了。 致使$(":radio")出错了吧 把$(this).addClass("error"); 注释掉就不在出现溢出的错误了。可是要求在文本框内输过超出范围的数字,就要改变文本框的样式,样式还是要加的,这可怎么办啊?????
试试看
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
.error{ background-color:Red; }
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#txtbox").bind("propertychange", txt_radio_onblur);
}); function txt_radio_onblur() {
var v =$.trim($("#txtbox").val());
//如果不是数字, 而且没有加上错误样式
if (isNaN(v)) {
$("#txtbox").addClass("error");
}
}
</script>
</head>
<body>
<div>
<span>请输入数字:</span>
<input id="txtbox" type="text" />
</div>
</body>
</html>
正确的做法应该如下面:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
.error{ background-color:Red; }
</style>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#txtbox").bind("keyup", function () {
var v = $.trim($(this).val());
//如果不是数字, 而且没有加上错误样式
$(this).toggleClass( "error", v!="" && isNaN(v) );
});
});
</script>
</head>
<body>
<div>
<span>请输入数字:</span>
<input id="txtbox" type="text" />
</div>
</body>
</html>
propertychange事件非常敏感, 而且浏览器兼容性也不好
以后要尽量少用 propertychange 了,改用 keyup 或 keydown 比较好。那在这两个地方有什么明显的区别吗???
1)//如果不是数字, 而且没有加上错误样式
if (isNaN(v)) {
$("#txtbox").addClass("error");
}
2)//如果不是数字, 而且没有加上错误样式
$(this).toggleClass( "error", v!="" && isNaN(v) );
(这里 只是多一个空字符判断???)