带参数的jquery函数

时间:2010-12-07 03:19:19

标签: javascript jquery

我有几个复选框,当选中时显示隐藏的div。有没有办法编写一个jquery函数,根据复选框是否被hidded div检查显示或隐藏?

仅使用javascript

<input type="checkbox" name="box1" id="box1" onclick="function toggle('div1')">
<div id='div1'>
.....
</div>

<input type="checkbox" name="box2" id="box2" onclick="function toggle('div2')">
<div id='div2'>
.....
</div>


<script>
function toggle(id) {
if (this.checked) show(id);
else hide(id);
}

其中show()hide()是函数定义来更改id的显示属性。

有没有办法在jquery中执行此操作,我将切换绑定到复选框adn让它切换以某种方式传递的ID?

1 个答案:

答案 0 :(得分:11)

您可以尝试创建一个小型jQuery插件:

$.fn.toggleCheckboxContainer = function(selector) {
   var toggleObject = $(selector);
   return $(this).each(function() {
      $(this).change(function() {
        $(this).is(':checked') ? toggleObject.show() : toggleObject.hide();
      });
   });
};

$(function() {
    $('#box1').toggleCheckboxContainer('#div1');
    $('#box2').toggleCheckboxContainer('#div2');
});

jsFiddle example

相关问题