Jquery on('click)无法正常工作

问题描述:

我有几个div元素,这些元素用索引填充,例如Jquery on('click)无法正常工作

Divid1 + index0 
Divid2 + index1 
Divid3 + index2 

点击函数已经应用到这些单独的元素,所以Jquery SlideToggle可以打开已分配给这些元素的div元素。

现在我已经创建了一个图像的点击功能来使用触发器功能打开这些框,但它似乎不工作。

$('image').on('click', function() { 
    $('#result' + index).trigger('click'); 
}); 

我想这使已分配的单击事件:

$('#result'+index).click(function({ 
    $(this).next("#nesteddiv").slideToggle("slow"); 
}); 

谢谢

+2

'索引'在哪里设置,它的值是什么?它看起来像使用一个普通的类和一个事件处理程序将是一个更好的主意。 –

+1

请将此添加到jsfiddle? – deepakb

+1

我不知道任何'image'标签,它应该是'img'。此外,'id'必须是唯一的,并且您的代码'$(this).next(“#nesteddiv”)'告诉您可能会多次使用它 – Hacketo

既然你想的slideToggle毗邻一个元素点击一个CSS选择器,通配符将是最合适的。

$('.slideToggleImage').on('click', function() { 
    $("[id^=result]").trigger('click'); 
}); 

$("[id^=result]").click(function() { 
    $(this).next(".nesteddiv").slideToggle("slow"); 
}); 

并且将#nesteddiv更改为类,因为ID应始终是唯一的。它会工作,但它只是最佳实践:)

+0

非常感谢你!它工作完美:)! –

+0

你不仅欢迎你!我经常忘记通配符选择器的存在和有用性;-)不要忘记将其标记为可行的答案。快乐的编码! –

+0

我有一个快速的问题,我如何使这项工作为独特的div元素,而不是启用切换所有的DIV元素?再次感谢你:) –