我一直在网上寻找一个例子或解决方案,但还没有成功。我面临的挑战是使用jQuery选择一个以字符串开头的元素ID,但也以函数传递的变量结束。
例子:
. jsp文件-有一个ForEach循环,它创建动态div并将变量${number}添加到它们的'id'中作为键。这允许按钮只显示/隐藏唯一的div,而不会影响同一页面上的其他div。
<div id="success-icon${number}"></div>
<div id="success-msg${number}"><p>My Message</p></div>
<button id="success-btn${number}" onclick="showIcon(${number})">Show Button ${number}</button>
. js文件//does not work, because it is looking for success+number
function showIcon(number){
$('[id^=success]'+number).show();
}
我需要它寻找一个id,以"success"开始,以"number"变量结束。
非常感谢任何帮助,并提前感谢您的时间!
您可以使用as选择器:
$('[id^=success][id$='+number+']').show();
但要注意,将匹配number = 1;
和div
的id: success-icon1
和例如success-icon11
。这取决于你的预期行为。
无论如何,要对某些元素进行"分组",您最好使用特定于每个分组元素的公共类。