[英]JQuery - do this if element with specific ID (wildecard) has been clicked on
我尝试将具有相似功能的少数功能合并为一个。 我想根据单击哪个按钮来分开此功能。
$(document).on('click', '[id^=pack-payreq-toggle-], [id^=test-payreq-toggle-]', function(e) {
e.preventDefault();
if($("[id^='pack-payreq-toggle-]").length > 0) { console.log('Pack Pay Req'); }
if($("[id^='test-payreq-toggle-]").length > 0) { console.log('Test Pay Req'); }
});
我可以使用"has class"
管理结果,但是我想学习如何基于id名称识别按下哪个元素。 预先感谢您的建议。
您可以在click函数中使用$(this).attr('id')
,以便可以使用以下方法检查该值的一部分以在id
包含pack
或test
字符串:
var idVal = $(this).attr('id');
if(idVal.indexOf('pack') !== -1){
console.log('Pack Pay Req');
}
if(idVal.indexOf('test') !== -1){
console.log('Test Pay Req');
}
这是因为如果字符串中存在值test
或pack
,则它将具有从0
到idVal.length-1
索引。 因此,通过检查索引不等于(或大于) -1
可以知道id
存在值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.