我有一个有多行的表。行内有行选项:
HTML CODE:
<ul class="rowOptions">
<li>
<img src="/images/navigation/arrow.png">
<ul>
<li><a href="javascript:updateRow(data)">Update</a></li>
<li><a href="javascript:deleteRow(data);">Remove Link</a></li>
<li><a href="javascript:archiveRow(data);">Archive Contact</a></li>
</ul>
</li>
</ul>
最初,内部ul显示悬停,但我们希望仅在单击img时才显示选项。到目前为止,我试过了:
JQUERY CODE:
$(document).on('click','.rowOptions img', function () {
$('.rowOptions li ul').slideToggle();
});
代码在实现显示内部列表的任务方面非常有效,除了它显示所有行的内部列表而不是被单击的行。
答案 0 :(得分:0)
使用$(this)
$(document).on('click','.rowOptions img', function () {
$(this).closest('li').find('ul').slideToggle();
});
答案 1 :(得分:0)
$(document).on('click','.rowOptions img', function () {
$(this).parent().find('ul').slideToggle();
});
答案 2 :(得分:0)
尝试指出主菜单列表中的子列表并切换。
HTML CODE:
<ul class="rowOptions">
<li>
<img src="http://bxslider.com/images/730_100/tree_root.jpg">
<ul>
<li><a href="javascript:updateRow(data)">Update</a></li>
<li><a href="javascript:deleteRow(data);">Remove Link</a></li>
<li><a href="javascript:archiveRow(data);">Archive Contact</a></li>
</ul>
</li>
<li>
<img src="http://bxslider.com/images/730_100/tree_root.jpg">
<ul>
<li><a href="javascript:updateRow(data)">Update</a></li>
<li><a href="javascript:deleteRow(data);">Remove Link</a></li>
<li><a href="javascript:archiveRow(data);">Archive Contact</a></li>
</ul>
</li>
</ul>
JQUERY CODE:
$(document).on('click', '.rowOptions img', function () {
$(this).parent().find('ul').slideToggle();
});
现场演示:
快乐编码:)