4

我有这个 HTML 结构

<div class="buttons">
    <button data-icon="ui-icon-disk" class="save">Save1</button>
    <button data-icon="ui-icon-check" class="ok">OK1</button>
    <button data-icon="ui-icon-trash" class="delete">Delete1</button>
    <button data-icon="ui-icon-close" class="close">Close1</button>
</div>

页面中有很多像这样的块。
一些按钮带有点击处理函数(保存和删除按钮)。

我想要做的是:如果有人单击确定按钮,则应运行相应的 保存按钮单击绑定功能。

我的代码:

$('.save').click(function(){
    alert('save');
});
$('.ok').click(function(){
    $('.save').click();
});

这是错误的,当我单击确定按钮时,所有保存按钮都会触发......不仅是同一按钮组中的那个。

演示说明我的问题。

4

3 回答 3

5

用于$(this).siblings('.save').click()仅选择单击按钮的同级,而不是整个文档中的所有匹配按钮。

演示: http: //jsfiddle.net/ThiefMaster/nMnm7/2/
文档: http ://api.jquery.com/siblings/

于 2012-06-15T13:46:10.637 回答
4

使用兄弟姐妹

$('.ok').click(function(){
    $(this).siblings('.save').click();
});

演示

于 2012-06-15T13:47:51.477 回答
1

http://api.jquery.com/siblings/

$('.ok').click(function(){
   $(this).siblings(".save").click();
});
于 2012-06-15T13:48:50.993 回答