我看到了同样的问题,但没有得到答案。
项目有一个表,表中有两个记录,每个记录都有一个按钮(名称和id相似),我添加了一个名称为id-account
的自定义属性,第一个记录的值为1
,第二个记录的值为记录具有2
值。
按钮(我使用的是laravel 5.7):
<a href="#" class="btn btn-primary" id-account="'.$this->id.'" name="edit-bank-account" id="edit-bank-account">edit</a>
然后我编写这段代码,该代码返回id-account
属性的值,
$('#edit-bank-account').click(function(){
console.log( $("#edit-bank-account").attr("id-account"));
});
但是有一个问题,因为此代码仅返回第一条记录的值,而当我单击第二条记录时,什么也不会返回
答案 0 :(得分:4)
class
的必须是唯一的。您需要对多个元素使用$('.edit-bank-account').click(function() { //Use class edit-bank-account
console.log($(this).attr("id-account")); //Use this as selector, this will refer to the clicked element
});
。
演示:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="#" class="btn btn-primary edit-bank-account" id-account="1" name="edit-bank-account" >edit</a>
<a href="#" class="btn btn-primary edit-bank-account" id-account="2" name="edit-bank-account" >edit</a>
<a href="#" class="btn btn-primary edit-bank-account" id-account="3" name="edit-bank-account" >edit</a>
WITH ordered AS (
SELECT
module,
ROW_NUMBER() OVER (ORDER BY 1) as row_nr
FROM so_sample
)
SELECT
module,
row_nr,
module ||
cast(
row_nr - ROW_NUMBER() OVER (PARTITION BY module ORDER BY row_nr)
AS STRING ) as block_id
FROM ordered
ORDER BY row_nr
;