开发者社区> 问答> 正文

一个id 绑定click事件 做不同的条件判断?

js代码:

 //弹窗注册协议
    ms=window.parent.document.getElementById('inputzz1');
    ks=window.parent.document.getElementById('inputzz');
    $('#yes-agree').click(function(){
        console.log(ms);
        if(!(ms.getAttribute('checked'))){
            console.log(123);
            $("#inputzz1").attr("checked",true);
            $("#check-do1").addClass("check-do-on");
            $("button[title='注册']").removeAttr("disabled","disabled").css("background-color","#E4393C");//启用提交按钮
            console.log(1234);
        }
        if(!(ks.getAttribute('checked'))){
            $("#inputzz").attr("checked",true);
            $("#check-do").addClass("check-do-on");
            $(".pt-mid").css({"background-position":"-57px -303px"},
                    {"width":"175px"},{"height":"33px"});
            $("#btnrdz").removeAttr('disabled','disabled');//禁用提交按钮
        }
        $('.sc-model').fadeOut().html("");
        $('.sc-zzc-bg').fadeOut();
    });

    $('#no-agree').click(function(){
        if(ms.getAttribute('checked')){
            console.log(123);
            $("#inputzz1").attr("checked",false);
            $("#check-do1").removeClass("check-do-on");
            $("button[title='注册']").attr('disabled','disabled').css("background-color","#ccc");//禁用提交按钮
        }
        if(ks.getAttribute('checked')){
            $("#inputzz").attr("checked",false);
            $("#check-do").removeClass("check-do-on");
            $(".pt-mid").css({"background-position":"-610px -583px"},
                    {"width":"175px"},{"height":"33px"});
            $("#btnrdz").attr('disabled','disabled');//禁用提交按钮
        }
        $('.sc-model').fadeOut().html("");
        $('.sc-zzc-bg').fadeOut();
    });

触发事件html片段:

<span class="agree">
      <b>&lt;我已阅读国广相关手册&gt;</b>
</span>
    

注册协议html:

<p class="Msoagree">
    <span>
        <a class="no-agree" id="no-agree"><i></i>不同意</a>
        <a class="yes-agree" id="yes-agree"><i></i>同&nbsp;意</a>
    </span>
</p>
    

screenshot
screenshot
screenshot

问题补充: 注册协议这个弹窗html是放在外部的,并且页面两处地方点击<我已阅读国广相关手册>弹出的是同一个外部的html.
现在点击同意或者不同意控制的是两个form表单中的样式。

需求: 分别点击同意或者不同意这两个id时,能否让js只修改相应的form表单内的样式??

展开
收起
杨冬芳 2016-06-20 17:44:21 2705 0
1 条回答
写回答
取消 提交回答
  • IT从业

    很简单的东西,写这么复杂

    $('#yes-agree').on('click', function(){
        // 这里判断浮层是否显示,假设$(xxx)是你的浮层
        if($(xxx).is(':visible')){
            // 浮层显示,修改浮层内样式
            $('#inputzz1').prop('checked', true);
            $("#check-do1").addClass("check-do-on");
            $("button[title='注册']").prop('disabled', false);
        } else {
            // 浮层隐藏,修改页面内样式
            $("#inputzz").prop("checked",true);
            $("#check-do").addClass("check-do-on");
            $("btnrdz").prop('disabled', false);
        }
        $('.sc-model').fadeOut().html("");
        $('.sc-zzc-bg').fadeOut();
    });
    2019-07-17 19:44:25
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载