Javascript Jquery函数在多个按钮上添加类和删除类,但仅执行单击的特定按钮
您好,我似乎被这个特定的代码卡住了。我的网站上有多个按钮,当你点击其中一个按钮时,它会改变类别&里面的文本会在再次点击后恢复。它似乎只对一个按钮起作用,但有多个按钮具有相同的ID&当它们被单击时,什么也不会发生。这里是代码输入代码Javascript Jquery函数在多个按钮上添加类和删除类,但仅执行单击的特定按钮,javascript,jquery,Javascript,Jquery,您好,我似乎被这个特定的代码卡住了。我的网站上有多个按钮,当你点击其中一个按钮时,它会改变类别&里面的文本会在再次点击后恢复。它似乎只对一个按钮起作用,但有多个按钮具有相同的ID&当它们被单击时,什么也不会发生。这里是代码输入代码 $('#btnInfo').click(function() { if ($(this).text() == "More Info") { $(this).text("Cancel").addClass('btn-danger'); }
$('#btnInfo').click(function()
{
if ($(this).text() == "More Info")
{
$(this).text("Cancel").addClass('btn-danger');
}
else
{
$(this).text("More Info").removeClass('btn-danger');
};
});
我不确定当我点击按钮时,只有一个按钮得到了这个功能,而其他按钮保持不变,但我希望所有按钮都能执行上面的代码,但仅限于我用ID专门点击的按钮。不清楚你到底在看什么 如果您正在为所有按钮寻找此功能,则需要类似的功能
$('button').click(function() //see changed css selector
{
if ($(this).text() == "More Info")
{
$(this).text("Cancel").addClass('btn-danger');
}
else
{
$(this).text("More Info").removeClass('btn-danger');
};
});
您的选择器是下一行中的id btnInfo
$('#btnInfo').click(function()
这将只选择一个按钮。使用class.btnInfo并将其作为class属性添加到按钮中首先,不能有多个具有相同ID的元素,因此请改用class。 我认为您想要的是将事件单击绑定到您的所有按钮,而不是这样做
$('.className').on('click', function(e){
if ($(this).text() == "More Info")
{
$(this).text("Cancel").addClass('btn-danger');
}
else
{
$(this).text("More Info").removeClass('btn-danger');
};
});
查看链接了解更多信息:将您的html添加到问题中。看起来您正在将此函数附加到一个Id,因此它只适用于Id为的按钮:btnInfo有多个Id为相同的按钮这不好不要使用Id为相同的按钮的多个-这违反html规范,选择器“btnInfo”将只返回找到的第一个元素。将这些按钮指定为同一类并按其搜索:'.buttonClass'-此类甚至不必存在。如果是多个按钮,则不应再将其作为ID,然后应为它们指定一个类。f、 ex class=btnInfo,要在javascript中引用它们,选择器是$'.btnInfo'why is.on befort.click在这种情况下?.onclick与相同。click不是更好,它是相同的,因为click是on'click'的快捷方式