jquery对话框问题

时间:2012-05-16 04:39:28

标签: ajax jquery-ui jquery

此时我正在使用下面的代码调出一个对话框来编辑mysql记录,但我的问题是我用来调出对话框的按钮正在通过一个循环来允许我编辑任何记录但是最新发生的是顶部按钮会显示对话框但是第二个第3个等等我已经弄清楚为什么会发生这种情况,这是因为它们都有相同的“id”但我的问题是有什么方法可以当我点击任何按钮而没有在...中写入100个对话框时,调出对话框。

    $( "#edit" ).dialog({
                autoOpen: false,
                draggable: false,
                modal: true,
                width: "322",
                buttons: {
                    "Add to Log": function() {
                      $( this ).dialog( "close" );  
                    },
                    Exit: function() {
                        $( this ).dialog( "close" );
                    }
                }

            });

            $( "#editi" ).click(function() {
                $( "#edit" ).dialog( "open" );
                return false;
            });
</script>


 <button id="editi">Edit</button> // normally goes thru a while loop and is reapeted 5 or 6 times but only the frist one genrated works

    <div class="edit" id="edit" title="Edit Entry" style="font-size:15px">
    <p>hello</p>

3 个答案:

答案 0 :(得分:2)

$("#edit").dialog({
                autoOpen: false,
                draggable: false,
                modal: true,
                width: "322",
                buttons: {
                    "Add to Log": function() {
                      $( this ).dialog( "close" );  
                    },
                    Exit: function() {
                        $( this ).dialog( "close" );
                    }
                }

            });

/*this is the area that is looped*/
            $(".editi").click(function() {
                $( "#edit" ).dialog( "open" );
                return false;
            });
</script>


 <button class="editi">Edit</button>

    <div class="edit" id="edit" title="Edit Entry" style="font-size:15px">
    <p>hello</p>

答案 1 :(得分:1)

您是否多次重复使用相同的ID(editi)?您可能想要创建一个类似buttonClass的类并以这种方式连接按钮:

        $( ".buttonClass" ).click(function() { 
            $( "#edit" ).dialog( "open" ); 
            return false; 
        }); 

答案 2 :(得分:0)

将该类保持为editi,而不是将其保留为id,并为此:

$('.editi').click(function(){
   //do what you want to do
})