jQuery Multiple" opener"一个对话框的按钮

时间:2014-03-13 09:30:39

标签: javascript jquery html button jquery-ui-dialog

我有大约一百万个按钮试图从jQuery UI打开一个单独的对话框。 页面上的第一个按钮打开Dialog就好了,但是页面上的每个其他按钮都没有做任何事情,它们都具有相同的ID,我只是使用网站上的基本对话脚本(我很新所有的JS)。

这是代码;

<td style="height:15px"><input type="button" id="opener" value="Edit" onClick="currentroom( 0,0 )"></td>

如果其中一个按钮就是一个例子。

<div id="dialog" title="Set Room Type">
<a onClick="changeroomblank()"><img src="img/blank.png" alt="No room" width="32" height="32"></a>

这是对话框div的开头

最后。

<script>

$( "#dialog" ).dialog({ autoOpen: false });
$( "#opener" ).click(function() {
  $( "#dialog" ).dialog( "open" );
});

</script>

所以它几乎都是从网站上复制和粘贴的,但是在我寻求帮助的所有地方,我看到的是如何在对话框上获得实际的按钮,这是我不需要的。

1 个答案:

答案 0 :(得分:1)

由于id是唯一的,因此您需要使用类:

<td style="height:15px"><input type="button" class="opener" value="Edit" onClick="currentroom( 0,0 )">

然后你可以这样做:

$(function() {
    $("#dialog" ).dialog({ autoOpen: false });
    $(".opener" ).click(function() {
        $( "#dialog" ).dialog( "open" );
    });
});

另外,请记住将代码包装在DOM ready handler $(function() {...});中,以确保在执行javascript之前正确添加所有DOM元素。