js 复选框判断是否选中后,其他字段判断是否填写失败求解!

waltguo 2013-06-28 10:23:47
请教各位,我这段代码,为什么我启用判断复选框后是否选中后,下面的姓名为空,就不做判断了?如果我关掉复选框判断,姓名,部门,Email ,就没有问题。

<script language="javascript"> 
function g(id) {
return document.getElementById(id);
}

function checkForm() {
if ( $("#email").val() != '' )
{
var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
if(!myreg.test($("#email").val()))
{
alert('请输入有效的E_mail');
//myreg.focus();
return false;
}
}
if ( $("#mobile").val() != '' )
{
var mobile_reg = /^((1[0-9]{2})|159|153)+\d{8}$/;
if(!mobile_reg.test($("#mobile").val()))
{
alert('请输入有效的电话');
// myreg.focus();
return false;
}
}
var products = document.getElementsByName("products");
var lens = products.length;
for ( var j = 0; j < lens; j++ ) {
if ( products[j].checked ) {
return true;
}

}
//alert("您好,请选择试用产品");
alert("您好,请选择需要试用的产品!");
return false;


if( $("#username").val() == '')
{


alert(' 请输入您的姓名!');
return false;
}

if( $("#bm").val() == '')
{


alert(' 请输入部门职务!');
return false;







}

if( $("#email").val() == '')
{


alert(' 请输入Email!');
return false;







}

}



function close_window() {
window.close();
}
</script>
...全文
107 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
waltguo 2013-06-28
  • 打赏
  • 举报
回复
引用 5 楼 qq137051908 的回复:

        var isSeleProd = false;
        var products = document.getElementsByName("products");
        var lens = products.length;
        for (var j = 0; j < lens; j++) {
            if (products[j].checked) {
                isSeleProd = true;
                break;
            }
        }
        if (!isSeleProd) {
            //alert("您好,请选择试用产品");
            alert("您好,请选择需要试用的产品!");
            return false;
        }
好厉害,非常感谢你的帮助!祝好~!
qq137051908 2013-06-28
  • 打赏
  • 举报
回复

        var isSeleProd = false;
        var products = document.getElementsByName("products");
        var lens = products.length;
        for (var j = 0; j < lens; j++) {
            if (products[j].checked) {
                isSeleProd = true;
                break;
            }
        }
        if (!isSeleProd) {
            //alert("您好,请选择试用产品");
            alert("您好,请选择需要试用的产品!");
            return false;
        }
小猴168 2013-06-28
  • 打赏
  • 举报
回复
你是想复选框只要有一个选中就为ture是吗?

var products = document.getElementsByName("products");
	var lens = products.length;
	var ak = 0;
	for ( var j = 0; j < lens; j++ ) {
		if ( products[j].checked ) {
			ak = 1;
		}
	}
	if (ak==0) return false;
waltguo 2013-06-28
  • 打赏
  • 举报
回复
引用 1 楼 qq137051908 的回复:

for ( var j = 0; j < lens; j++ ) {         if ( products[j].checked ) {             return true;         }       } 
这里只要有一个选中了就会return true; 在这段代码后面的不会执行了
那如何修改才能往下执行呢?谢谢!
Acesidonu 2013-06-28
  • 打赏
  • 举报
回复
引用 1 楼 qq137051908 的回复:

for ( var j = 0; j < lens; j++ ) {         if ( products[j].checked ) {             return true;         }       } 
这里只要有一个选中了就会return true; 在这段代码后面的不会执行了
++
qq137051908 2013-06-28
  • 打赏
  • 举报
回复

for ( var j = 0; j < lens; j++ ) {         if ( products[j].checked ) {             return true;         }       } 
这里只要有一个选中了就会return true; 在这段代码后面的不会执行了

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧