2012-04-02 232 views
1

我在处理这个项目时遇到了一些问题。选择复选框

我有一个不同的复选框列表,这些复选框是使用PHP从数据库中提取的记录。

现在,当我点击其中一个复选框时,我希望该选项以某种方式显示在其他地方。我一直试图让它与jQuery一起工作,但我没有那种经验,所以没有什么我可以做的。

+0

你能举个例子吗你试过 – bretterer 2012-04-02 18:40:01

+0

PHP本身不能做到这一点。 JavaScript或jQuery将是最好的解决方案。 – j08691 2012-04-02 18:45:11

回答

1

它实际上是通过使用AJAX完成的。但是如果你知道/想知道jQuery,你应该知道jQuery中的AJAX。在jQuery中,您必须调用与checkbox中特定id的click事件关联的函数。为了简单起见,让我们考虑每个独特的Id给予每个复选框,然后您可以单独调用一个jQuery Click事件来处理它。

<script> 
$(function(){ 

$("#yourid").click(function() { 

//do what you want to do here if checkbox "yourid" is clicked 
}); 

$("#yournextid").click(function(){ 

//do what your next event is. 

}); 
}); 
</script> 

这里yourid',“yournextid”是对应的复选框

+0

感谢您的回复,我需要一种方法来遍历所有的复选框,以便我可以检查哪一个已被选中。 这是一种很难写250+复选框的功能。而且这些更新也是动态的。 – 2012-04-03 08:08:04

0

的ID的保持一个隐藏的变量来存储选中的复选框的值。

正如“密码”所示,将复选框的onclick事件提交给javascript函数。将复选框对象作为参数传递。

在函数中检查复选框是否已选中或未选中。如果选中,则将复选框的值添加到隐藏变量中。如果未选中,则从隐藏变量中删除该值,之后再进行检查。

这样你总是有选中的复选框列表。

0

我解决了我遇到的问题。

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title></title> 
<script src="http://code.jquery.com/jquery-latest.js"></script> 
<script type="text/javascript"> 
$(function(){ 
    $('.checkbox').change(function(event){ 
     checked_value = $(this).val();   
     if(this.checked) 
     { 
          $("#content").append("<div id='" + checked_value +"'>New value: " + checked_value + "</div>"); 

     } 

     if(!this.checked) 
     { 
      $("#" + checked_value).remove(); 
     } 

    }); 

      $('#checkall').change(function(){ 
        $('.checkbox').attr('checked',$(this).attr('checked')) 
      }); 

}); 
</script> 
    </head> 
    <body> 
    <input type="checkbox" id="cb1" class="checkbox" value='a' /> 
    <input type="checkbox" id="cb2" class="checkbox" value='b' /> 
    <input type="checkbox" id="cb3" class="checkbox" value='c' /> 

<div id="content"></div> 
</body> 
</html> 

上面的代码是我现在使用的。

我不记得我从哪里得到它,而是将它归功于它的各自所有者。