在jQuery中动态获取id
Posted
技术标签:
【中文标题】在jQuery中动态获取id【英文标题】:Get dynamically id in jQuery 【发布时间】:2021-10-21 22:29:00 【问题描述】:目标是动态检索jquery代码中的id,以便单击href为表中具有相同值的项目着色 下面的代码仅使用一个 id 完成。 链接是使用 smarty 中的 foreach 循环动态生成的。 如何更改 Js 代码以动态检索我的 ID,最后当您单击链接时,它会为 lou 行中的所有内容着色是搜索到的单词。 Smarty html 代码:
foreach from=$translateArray key=key item=value
if $key == $k
<a href="#" classe="inactiveLink" id="id_$k" style="color:#000080";>$value</a>
($val) |
/if
/foreach
带有 id="id_single" 的 Jquery(dataTable)
$(document).ready(function ()
var table = $("#my_table").DataTable(
"rowCallback": function (row, data)
$('#id_single').on('click', function ()
var value = $("#id_single").text();// How to get id dynamically here
console.log(value);
highLight(value, row);
);
function highLight(value, row)
$(row).css('color', 'unset');
$(row).css('font-weight', 'unset');
if (data[2] === value)
$(row).css('background-color', 'lightblue');
$(row).css('font-weight', 'bold');
);
);
【问题讨论】:
【参考方案1】:你可以像这样使用类
foreach from=$translateArray key=key item=value
if $key == $k
<a href="#" classe="inactiveLink id_single" style="color:#000080";>$value</a>
($val) |
/if
/foreach
$(document).ready(function ()
var table = $("#my_table").DataTable( “rowCallback”:函数(行,数据)
$('.id_single').on('click', function () // first change
var value = $(this).text();// second change
console.log(value);
highLight(value, row);
);
function highLight(value, row)
$(row).css('color', 'unset');
$(row).css('font-weight', 'unset');
if (data[2] === value)
$(row).css('background-color', 'lightblue');
$(row).css('font-weight', 'bold');
); );
【讨论】:
对不起,但我认为在调用的每一行回调上创建一个新的事件处理程序是一个非常糟糕的主意。以上是关于在jQuery中动态获取id的主要内容,如果未能解决你的问题,请参考以下文章