Javascript jQuery只应用于单个按钮,而不是它的所有实例
我有一个页面,页面上有许多动态按钮,所有按钮的id都是“delete button”。我的jQuery工作得很好,但只在第一个实例“删除按钮”上运行Javascript jQuery只应用于单个按钮,而不是它的所有实例,javascript,jquery,html,Javascript,Jquery,Html,我有一个页面,页面上有许多动态按钮,所有按钮的id都是“delete button”。我的jQuery工作得很好,但只在第一个实例“删除按钮”上运行 是什么感冒引起的?不能有多个按钮具有相同的id吗?如果有多个元素具有相同的id,id选择器将只获取第一个。您应该改用类名。e、 g $('.delete_button').mouseleave(... 如果有多个元素具有相同的id,则id选择器将只获取第一个元素。您应该改用类名。e、 g $('.delete_button').mouseleav
是什么感冒引起的?不能有多个按钮具有相同的id吗?如果有多个元素具有相同的id,id选择器将只获取第一个。您应该改用类名。e、 g
$('.delete_button').mouseleave(...
如果有多个元素具有相同的id,则id选择器将只获取第一个元素。您应该改用类名。e、 g
$('.delete_button').mouseleave(...
Id应该是唯一的(只有一个)。改用.delete_按钮class
<button id="delete_button1" class="delete_button"></button>
<button id="delete_button2" class="delete_button"></button>
....
<button id="delete_buttonN" class="delete_button"></button>
$(function(){
$('body').on('mouseenter', '.delete_button', function() {
$(this).closest('tr').css({
'border-left' : 'solid',
'border-left-width' : '2px',
'border-left-color' : '#dd3333'
});
});
$('body').on('mouseleave', '.delete_button', function() {
$(this).closest('tr').css('border-style', 'none');
});
});
....
$(函数(){
$('body')。在('mouseenter','上。删除按钮',函数(){
$(this).closest('tr').css({
“左边框”:“实心”,
“边框左宽度”:“2px”,
“左边框颜色”:“dd3333”
});
});
$('body')。在('mouseleave','上。删除按钮',函数(){
$(this).closest('tr').css('border-style','none');
});
});
Id应该是唯一的(只有一个)。改用.delete_按钮class
<button id="delete_button1" class="delete_button"></button>
<button id="delete_button2" class="delete_button"></button>
....
<button id="delete_buttonN" class="delete_button"></button>
$(function(){
$('body').on('mouseenter', '.delete_button', function() {
$(this).closest('tr').css({
'border-left' : 'solid',
'border-left-width' : '2px',
'border-left-color' : '#dd3333'
});
});
$('body').on('mouseleave', '.delete_button', function() {
$(this).closest('tr').css('border-style', 'none');
});
});
....
$(函数(){
$('body')。在('mouseenter','上。删除按钮',函数(){
$(this).closest('tr').css({
“左边框”:“实心”,
“边框左宽度”:“2px”,
“左边框颜色”:“dd3333”
});
});
$('body')。在('mouseleave','上。删除按钮',函数(){
$(this).closest('tr').css('border-style','none');
});
});
两个答案都是正确的,但要详细说明这一点,只需一点。有效的html规定在给定页面的多个元素上不能有相同的id。Id是元素的唯一标识符。Jquery将此视为页面上实际上只能有一个id,因此一旦找到一个id选择器,它将停止在dom中查找更多与id选择器匹配的元素。如果要将逻辑应用于具有相同调用的多个元素,则必须为这些元素分配一个类,因为它们将被多次使用。jquery知道这一点,并将找到与类选择器匹配的所有元素 两个答案都是正确的,但要详细说明这一点,只需一点。有效的html规定在给定页面的多个元素上不能有相同的id。Id是元素的唯一标识符。Jquery将此视为页面上实际上只能有一个id,因此一旦找到一个id选择器,它将停止在dom中查找更多与id选择器匹配的元素。如果要将逻辑应用于具有相同调用的多个元素,则必须为这些元素分配一个类,因为它们将被多次使用。jquery知道这一点,并将找到与类选择器匹配的所有元素 您只针对一个按钮,因为ID是唯一的,您只能有一个具有该ID的按钮。您只针对一个按钮,因为ID是唯一的,您只能有一个具有该ID的按钮。