我在jQuery中选择一行表时遇到问题,该表用类edit
标识,然后在定义时用变量编号,所以我的第一行会有一个类edit1
,第二个edit2
等等。
我担心的是我可以在表格的最后一行触发click事件,但我明白为什么会这样,但是我无法找到有关如何实际动态选择这些行的信息。
我尝试了这样的 .each 方法:
$('table tr').each(function(){
$('.edit{{server->id}}').on('click', function (){
$(this).attr("contenteditable", "true");
$(this).addClass('form-group');
$('div.editable').addClass('form-control');
$('div.hidbtn').removeAttr('hidden');
});
});
它显然无法正常工作,因为我的{{server->id}}
只是指从创建行的foreach中获取的最后一个{{server->id}}
。
如何以一种方式选择每一行并为每一行触发点击事件?
剧本中的foreach?
对不起,如果这会导致这样一个愚蠢的问题..
我顺便使用Laravel 5.4。
提前致谢!
答案 0 :(得分:0)
当你通过每个tr遍历表并需要将事件绑定到每行内的元素.edit
时,你就可以找到"该元素并将事件绑定到它。
$('table tr').each(function(){
$(this).find('.edit').on('click', function() {
...
});
});
答案 1 :(得分:0)
试试这个
var id=1;
$('table tr').each(function(){
$('.edit'+id).on('click', function (){
$(this).attr("contenteditable", "true");
$(this).addClass('form-group');
$('div.editable').addClass('form-control');
$('div.hidbtn').removeAttr('hidden');
});
id+=1;
});
或者这样做 HTML: -
<td onclick="clickFunctio()"></td>
Jquery的: -
function clickFunctio() {
$(this).attr("contenteditable", "true");
$(this).addClass('form-group');
$('div.editable').addClass('form-control');
$('div.hidbtn').removeAttr('hidden');
}