2012-10-23 32 views
0

这样可以正常工作,除非您多次点击同一标签快速打开toggle()。我预计这种行为为toggle(),因为它应该。问题是:如果元素已经是:checked,我该如何使toggle()不运行?快速点击中断jQuery切换()

$(document).ready(function() { 
$("#UPLOADMYDESIGNFF").show(); 

$('label').click(function() { 

    var total = 0; 

     $('.option:checked').each(function() { 

    if($(this).is('#DESIGNONLYFF:checked, #NOPRINTFF:checked')) 
       { 
        $("#UPLOADMYDESIGNFF").toggle(); 
       } 


     total += parseFloat($(this).data('number')); 
     $(this).parent().addClass('cust-selected-cart-item'); 

     }); 

     $('.option:not(:checked)').each(function() { 
      $(this).parent().removeClass('cust-selected-cart-item'); 
     }); 

      $('.sub-total-t').html('$' + total.toFixed(2)); 
     }); 


    }); 

粗的默认的DIV:UPLOADMYDESIGNFF设置为DISPLAY:NONE

HTML

<label><input id="NOPRINTFF" type="radio" name="print"/></label> 
<label><input id="DESIGNONLYFF" type="radio" name="print"/></label> 
+0

你可以在[jsfiddle.net](http://www.jsfiddle.net)上提供演示吗? – undefined

+0

这里是jsFiddle:http://jsfiddle.net/XHCkc/谢谢// btw'toggle()'实际上就像'toggle()'应该在这个演示中工作,但是在我的本地设置中它似乎保留了'div '隐藏如果任何输入被选中(这是我想要的),但它打破了,如果你点击快速... – fyz

+0

只注意到,如果我做显示/隐藏,因为它是在我的代码中评论它的作品正确的jdfiddle,但它不适用于我的本地设置.. – fyz

回答

0

没关系所有 - 我想通了这个问题..只是改变(this).option:checked现在的作品的权利。不管怎么说,还是要谢谢你! :)