我有问题显示一个div然后隐藏前一个div。
var newElem = '#ID' + numVariable;
$('.elemPropGlobal').hide();
$(newElem).click(function (){
$('.elemPropGlobal').hide();
$($(this).attr('id') + 'Properties').show();
}
我点击的分区
<div class="something" id="ID1" > some data</div>
<div class="something" id="ID2" > some data</div>
应显示和隐藏的分区
<div class="elemPropGlobal" id="ID1Properties" >
<div class="elemPropGlobal" id="ID2Properties" >
答案 0 :(得分:4)
您忘记了#
。
$('#' + this.id + 'Properties').show();
答案 1 :(得分:0)
目前,您正在寻找名为 ID1Properties
等的元素。您需要#
前缀才能按ID搜索!
$("#" + $(this).attr('id') + 'Properties').show();
答案 2 :(得分:0)
我不知道它是否过于简单化了,但你没有为这两个div设置click事件而你忘记了第二个选择器中的hash:
$(newElem).click(function (){}); //newElem is #ID1 or #ID2
你可以做到
$(".something").click(function (){
$('.elemPropGlobal').hide();
$("#" + $(this).attr('id') + 'Properties').show(); //Remember the hash!
});