解决方案 »

  1.   

    unThecoupon 是check的ID吗?你的check的ID都是一个吗?$("#unThecoupon") 只能找到一个。
      

  2.   

    嗯,是一个id,就是先注册click事件,然后模拟点击。问题是没促发click.
      

  3.   

    忘了说,用鼠标自己点击页面上是可以进入click方法的。就是模拟点击不行
      

  4.   

    那你用 $("#unThecoupon") .click() 模拟一下。
      

  5.   

    click() 是在 onclick 事件发生时所执行的函数
    显然是 onclick 在前,click() 在后
    如果 click() 能触发 onclick 事件的话,那不就死循环了吗?你需要的是监听目标的变化
    $(sele).on("input propertychange", function () {
        //相关操作
    });
      

  6.   

    首先,我不是很理解onclick和click()的先后顺序。
    但我现在的问题是如下:$("#unThecoupon").click("input propertychange",function() {
    alert($("#unThecoupon").is(':checked'));
    $("[name = paymentType]").each(function() {
    //货到付款
    if($(this).val()=='2') {
    $(this).attr("checked",false);
    if($("#unThecoupon").is(':checked')) {
    $(this).click(function() {
    alert("生成团购券的团购只能在线支付或服务台pos刷卡,不支持货到付款");
    $(this).attr("checked",false);
    });
    } else {
    $(this).unbind('click');
    }
    }

    //在线支付 ,服务台pos刷卡
    if($(this).val()=='1' || $(this).val()=='3') {
    $(this).attr('checked',$("#unThecoupon").prop('checked'));
    }
    });
    });
    //默认选中生成团购券
    $("#unThecoupon").click();alert($("#unThecoupon").is(':checked'));
    alert出来是false,不知道为什么。在我的预想中应该是ture才对
      

  7.   

    首先,我不是很理解onclick和click()的先后顺序。
    但我现在的问题是如下:$("#unThecoupon").click("input propertychange",function() {
    alert($("#unThecoupon").is(':checked'));
    $("[name = paymentType]").each(function() {
    //货到付款
    if($(this).val()=='2') {
    $(this).attr("checked",false);
    if($("#unThecoupon").is(':checked')) {
    $(this).click(function() {
    alert("生成团购券的团购只能在线支付或服务台pos刷卡,不支持货到付款");
    $(this).attr("checked",false);
    });
    } else {
    $(this).unbind('click');
    }
    }

    //在线支付 ,服务台pos刷卡
    if($(this).val()=='1' || $(this).val()=='3') {
    $(this).attr('checked',$("#unThecoupon").prop('checked'));
    }
    });
    });
    //默认选中生成团购券
    $("#unThecoupon").click();alert($("#unThecoupon").is(':checked'));
    alert出来是false,不知道为什么。在我的预想中应该是ture才对======================================
    <label for="ch1">ok</label>
    <input type="checkbox" id="ch1" />
    <button onclick="tri();">trigger</button>JS:function tri(){
    $("#ch1").trigger("click");
    }
    上面代码测试后,出发点击事件可以模拟点击选中,checkbox;所以楼主思路肯定没问题
      

  8.   

    建議你改一下寫法:$("#unThecoupon").change(function () {
        var isChecked = $(this).prop('checked');    alert(isChecked); //true or false
        alert(typeof(isChecked)); //boolean
    });
      

  9.   

    还是看下代码,那个地方导致unThecoupon的click事件没有触发
      

  10.   

    it really work! thx man.
    这就是我要的效果,我还是把刚才发生的重新描述下。
    刚才我click()函数模拟点击,然后进入bind click 方法。
    以上都没问题。但问题是在bind click函数中checkbox的prop("checked')仍然为false,
    我设想应该是click事件在改变属性之前拦截到了事件。、
    而change事件是在属性改变之后才进入事件,这点区别,但刚刚满足我的需求。
    我还在一直找属性改变监听,一直没找到。不过change可以用也行,能解决问题就好