我想获取被点击元素的ID,然后显示与此ID匹配的div
。我使用以下代码,但它无法正常工作。请帮忙。
$(function () {
var tabContainers = $('div.difContetform > div');
$('div#head-nav ul a').click(function (event) {
$('div#head-nav ul a').removeClass('current');
$(this).addClass('current');
var current_id = $(this).attr("id");
var targeted='DIV'+current_id;
$(targeted).show();
$(targeted:not).hide();
//
return false;
})
});
答案 0 :(得分:7)
您希望使用正确的选择器语法按id抓取您的div,即字符串#id
...因此:
$('#'+targeted).show();
$('something:not(#'+targeted+')').hide();
编辑:再看一遍(双拍),你不能只隐藏所有不匹配的内容,因为它会隐藏整个页面。您需要确保只选择DIV,而不是选择要显示的DIV。工作原理取决于您的页面布局(因此上例中的something
)。
答案 1 :(得分:1)
非常感谢亲爱的,我现在可以展示div,但却无法隐藏其他人。 正如你所说的所有页面消失我在容器id = formContainer和其他div(该id div的子节点)下这个id show hide和1显示被点击。
我使用以下语法
$('div#difContetform > div:not(#'+targeted+')').hide();
但它没有工作,虽然页面没有消失,但没有隐藏其他div