У меня есть это:Jquery, от ключевого слова «это» всем ТД в таблице
$(document).on("click","#imgCancel",function(){
$("#tbl_zones td").click(function(){
editTables("#tbl_zones td",this)
})
})
Я пытаюсь сделать функцию более универсальными, так что он будет работать на нескольких столах. imgCancel находится внутри таблицы, и во всех таблицах, которые я делаю, будет imgCancel.
Я рассмотрел заменить вторую строку:
$(document).on("click","#imgCancel",function(){
$(this).closest('table').find('td').click(function(){
editTables("#tbl_zones td",this)
})
})
Он не работал, хотя, и я также не имею, что ставить в качестве первого аргумента editTables (который должен ссылаться для всех td в текущей таблице).
Edit: Модификация jsfiddle jknaack, я закончил с этим:
$(document).on("click","#imgCancel",function(){
var tblID = $(this).closest('table').attr('id')
$("#"+tblID+" td").click(function(){
editTables("#"+tblID+" td",this)
})
})
ID являются уникальными. Значит, на странице только один элемент может иметь ID 'imgCancel'. –
, если вы хотите его для большего количества таблиц, добавьте класс таблицы и назовите его imgCancel и в jquery используйте «.imgCancel». – riso
Vega: Я знаю, что на странице не будет более одной таблицы за раз. – aanders77