复选框onclick事件jquery无法正常工作

时间:2013-09-23 20:21:23

标签: javascript html jquery

我的网站上有几个动态框。每15秒我的javascript会激活一些ajax请求,然后在页面上输出json回复,效果很好。我的问题是我的复选框切换事项。

我将on change事件连接到一个php页面,该页面将检查该值,如果它的1更改为0,并且0更改为1(这将控制复选框选中的值)。

我的问题是当我在另一个窗口上更改它...它将在15秒后更新并移动到我将其更改为...的状态,但这将触发onchange事件并且我得到一个循环。

我需要使用onClick事件仅在手动点击时更改,而不是在脚本自动更改时更改。

我如何执行此操作,因为onClick不工作:/

<script type="text/javascript" charset="utf-8">
$(window).load(function() {
  $('.on_off :checkbox').iphoneStyle();
  $('.disabled :checkbox').iphoneStyle();
  $('.css_sized_container :checkbox').iphoneStyle({ 
     resizeContainer: false, 
     resizeHandle: false 
    });
  $('.long_tiny :checkbox').iphoneStyle({ 
     checkedLabel: 'Very Long Text',
     uncheckedLabel: 'Tiny' 
    });

  var onchange_checkbox = ($('.onchange :checkbox')).iphoneStyle({
    onClick: function(elem, value) { 
     Update();
    }
  });


function Update(){
  $( "#result" ).load( "change.php");
}
</script>

2 个答案:

答案 0 :(得分:0)

看起来发布的脚本存在一些问题。你能看出这有用吗?

<script charset="utf-8" type="text/javascript">

    $(window).load(function() {

        $('.on_off:checkbox').iphoneStyle();
        $('.disabled:checkbox').iphoneStyle();
        $('.css_sized_container:checkbox').iphoneStyle({ 
            resizeContainer: false, 
            resizeHandle: false 
        });
        $('.long_tiny:checkbox').iphoneStyle({ 
            checkedLabel: 'Very Long Text',
            uncheckedLabel: 'Tiny' 
        });

        var onchange_checkbox = ($('.onchange:checkbox')).iphoneStyle({
            onClick: function(elem, value) { 
                Update();
            }
        });

    });

    function Update(){
        $("#result").load("change.php");
    }

</script>

答案 1 :(得分:0)

尝试捕获父级的点击事件 -

var onchange_checkbox = ($('.onchange :checkbox')).iphoneStyle();
onchange_checkbox.parent()[0].click(function(e){Update();});