即使刷新后仍然禁用按钮的Javascript [英] Javascript for keeping buttons disabled even after refreshing

查看:84
本文介绍了即使刷新后仍然禁用按钮的Javascript的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我点击它时会禁用按钮,但是当我刷新页面时,它仍应被禁用。我该怎么做?

I have button that gets disabled when you click it but when I refresh the page it should still be disabled. How can I do this?

<button onclick="this.disabled = true">Disable</button>


推荐答案

你应该使用 cookies 。页面刷新后Javascript不会保留页面状态(当然除非你在服务器端):

You should use cookies. Javascript won't preserve page state after page refresh (unless you are doing server side of course):

function setCookie(name, value){
  // Set cookie to `namevalue;`
  // Won't overwrite existing values with different names
  document.cookie = name + value + ';';
}

function checkIfClicked(){
  // Split by `;`
  var cookie = document.cookie.split(";");

  // iterate over cookie array
  for(var i  = 0; i < cookie.length; i++){
    var c = cookie[i];
    // if it contains string "click"
    if(/click/.test(c))
       return true;
  }
  // cookie does not exist
  return false;
}

// Set clicked to either the existing cookie or false
var clicked = checkIfClicked();

// Check if it was clicked before
alert(clicked);

// Get the button
var button = document.getElementsByTagName("button")[0];

// If it had been clicked, diable button
if (clicked) button.disabled = true;

// Add event listener 
// When button clicked, set `click` cookie to true 
// and disable button
button.addEventListener("click", function(){
  setCookie("click", "true");
  button.disabled = true;
}, false);

这篇关于即使刷新后仍然禁用按钮的Javascript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆