我使用以下功能添加一个类' active'到表中的元素: td可以包含textareas,输入等。 该类只应添加到textarea,input等,而不是整个td。 感谢您的提示
的jQuery
$(function() {
var table = $('table').on('focusin', 'td', function() {
$('.table tr td').removeClass('active');
$(this).addClass('active');
$('.toolbar').show();
});
});
$(function() {
var table = $('table').on('focusout', 'td', function() {
$('.table tr td').removeClass('active');
$('.toolbar').hide();
}); });
答案 0 :(得分:1)
您可以使用jQuery.find
$(this).find(":input").addClass('active');
并删除
$(this).find(".active").removeClass("active");
答案 1 :(得分:1)
您可以使用.find()使用后代遍历,您还必须对removeClass()
进行相应的更改
$(function () {
var table = $('table').on('focusin', 'td', function () {
$('.table tr td .active').removeClass('active');
$(this).find(':input').addClass('active');
$('.toolbar').show();
});
});
$(function () {
var table = $('table').on('focusout', 'td', function () {
$('.table tr td .active').removeClass('active');
$('.toolbar').hide();
});
});
答案 2 :(得分:0)
更改行
$(this).addClass('active');
到
$(this).find(':input')addClass('active');
表示输入字段,另外表示textarea字段
$(this).find(':textarea')addClass('active');