簡體   English   中英

jQuery-如果已單擊具有特定ID(通配符)的元素,請執行此操作

[英]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包含packtest字符串:

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'); 
}

這是因為如果字符串中存在值testpack ,則它將具有從0idVal.length-1索引。 因此,通過檢查索引不等於(或大於) -1可以知道id存在值

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM