Javascript 如何在不同页面上保持按钮状态?

Javascript 如何在不同页面上保持按钮状态?,javascript,jquery,Javascript,Jquery,单击时,我会为按钮指定一个禁用属性: $(".save_post").on("click", function() { $(this).attr("disabled", "true"); }); 但是,如果我更改了页面,然后返回到此页面,则按钮应保持给定的禁用属性,如果我使用localStorage,则这很好: localStorage.setItem("savedArticle", "savedButton"); var myButtonState = localStorage.ge

单击时,我会为按钮指定一个
禁用属性

$(".save_post").on("click", function() {
    $(this).attr("disabled", "true");
});
但是,如果我更改了页面,然后返回到此页面,则按钮应保持给定的禁用属性,如果我使用localStorage,则这很好:

localStorage.setItem("savedArticle", "savedButton");
var myButtonState = localStorage.getItem("savedArticle", "savedButton");
$(".save_post").addClass(myButtonState);
但是,我有不同的页面,可以使用
SAVE
,因此每次我单击按钮时,都会给出一个
disabled属性
,但是如果我像上面那样使用
localStorage
,它会将
myButtonState
添加到类为
的所有按钮中。每次我们使用它登录页面时,SAVE\u post


我正在尝试仅将属性添加到真正单击的按钮。

只需为每个
指定一个ID即可。保存post
元素:

<button id="savePost1" class="save_post">Save Post</button>
然后在加载时调用它:

$('#'+localStorage.getItem('saveButton')).attr('disabled', true);

改为使用
id
?@BenM-mm可能这实际上是一个想法,所以每次登陆页面时都要生成一个新的id,并保存该id,然后在此基础上添加属性?您希望如何保存每个页面的这些状态?数据库饼干?可能需要一个更完整的例子。这些按钮有ID吗?如果它们都必须分开,那么你就必须设置每个按钮。怎么用?存储中的单个记录数组。。。。真是太多了ways@Twisty我不需要cookie或数据库,本地存储将非常好是的,非常有意义。谢谢。将在一段时间内接受minute@rob.m唯一的问题是,如果用户能够单击多个
.save_post
按钮,则他们将无法执行此操作,因为我会在他们单击按钮时设置禁用属性,因此按钮在单击后立即禁用,不只是将状态保存在LocalStorager中,或者我可以简单地将其添加为数组列表并使数组唯一,但这并不复杂,除非您从HTML中手动删除禁用的属性。实际上,存在一个问题,通过这样做,我们总是替换savedId,我们应该将它们添加为一个数组,因为我们将添加许多ID,因为我们有许多页面
$('#'+localStorage.getItem('saveButton')).attr('disabled', true);