听取jQuery UI按钮更改,然后更新div

时间:2013-08-09 18:24:14

标签: jquery jquery-ui

我确信这是一个简单的情况,可能有点普遍,但我已经陷入困境,似乎无法弄明白。

我正在使用jQuery UI按钮作为复选框。我想要它,以便如果用户点击一个,jquery将对页面底部的相应div进行更改。最终,我计划让它使用.load来填充另一个页面内容的div,但是现在,我发现只是改变了背景颜色。

以下是我试图开始工作的代码。我对jQuery不是很好,我可能会犯一些简单的错误。

感谢您提供的任何帮助。

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8" />
    <title>jQuery UI Button - Checkboxes</title>
    <link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    <script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
    <link rel="stylesheet" href="/resources/demos/style.css" />
    <script>
        $(document).ready(function() {
        $(function() {
            $( "#check" ).button();
            $( "#format" ).buttonset();
        });
    });
    $('input:checkbox').change(function(){
        if($(this).is(':checked')){
            alert('checked');
            $("#first").css("background-color","yellow");
        } else {
            alert('un-checked');
            $("#first").css("background-color","red");
        }
    });
</script>
<style>
#format { margin-top: 2em; }
</style>

<div id="format">
    <input type="checkbox" id="check1" /><label for="check1">1</label>
    <input type="checkbox" id="check2" /><label for="check2">2</label>
    <input type="checkbox" id="check3" /><label for="check3">3</label>
</div>
<!-- The following divs will end up being populated via an ajax call based on checkbox selections -->
<!-- Ultimately, checking a given checkbox should toggle the corresponding div -->
<div id="first">
    &nbsp;
</div>
<div id="second">
    &nbsp;
</div>
<div id="third">
    &nbsp;
</div>

1 个答案:

答案 0 :(得分:0)

更改您的JS,以便.change()函数位于文档就绪部分内。否则,它不是活动

 $(document).ready(function() {
        $(function() {
            $( "#check" ).button();
            $( "#format" ).buttonset();
        });

    $('input:checkbox').change(function(){
        if($(this).is(':checked')){
            alert('checked');
            $("#first").css("background-color","yellow");
        } else {
            alert('un-checked');
            $("#first").css("background-color","red");
        }
    });
});