2013-11-02 3 views
0

У меня есть веб-страница для отображения данных в разбитом на страницы. У меня есть некоторые слайдеры на моей веб-странице для управления дисплеем. Итак, у меня есть кнопка, которая при нажатии будет отображать только те значения, которые соответствуют критериям ползунка. Для этого у меня есть localstorage, чтобы кнопка была отключена на всех страницах. Однако, как только я перехожу на другую страницу, кнопка снова включается. Это мой код.javascript localstorage не отключает кнопку

$("#update").click(function(){ 
       this.disabled = true; 
       localStorage.setItem("updateDisabled", true); 

И в моем jquery, где отображается обновленный дисплей, я включил следующие строки.

var disabled = localStorage.getItem("updateDisabled"); 
      if (disabled) $('#update').attr('disabled', disabled); 
      window.console && console.log(masterData,count); 
      $(this).toggle(count==masterData.length); 

Какие изменения необходимы, чтобы кнопка была отключена на всех страницах?

+0

что произойдет, если вместо 'true' вы просите _localStorage_ помнить' 'disabled''? –

+0

Спасибо за комментарии. Если я сохраню «отключен», кнопка останется активной на последующих страницах, но действие OnClick() не будет выполнено, как ожидалось. Есть ли способ отключить его на всех страницах? –

+0

'1' вы не включили закрытие'}); 'щелчка (я предполагаю, что вы просто пропустили его в копии/вставке, вы не сказали никаких ошибок в консоли),' 2' - это код для посмотрите из _localStorage_ и отключите _ # update_, который запускается ** до или после ** _ # update_ существует в _DOM_? –

ответ

0

Попробуйте что-нибудь подобное, чтобы страница завершила загрузку.

$(document).ready(function() { 
    if (localStorage.getItem("updateDisabled")) { 
     $('#update').attr('disabled', true); 
    }else { 
     $('#update').removeAttr('disabled'); 
    } 
}); 
+0

Спасибо за предоставление ответа. Я попробовал предложенный вариант. Я все еще вижу, что кнопка включена, когда я перехожу на следующую страницу. –

0

Поскольку localStorage может сохранять только укусы, вы не можете установить в нем значение boolean. Следовательно, Установить как:

$("#update").click(function(){ 
this.disabled = true; 
localStorage.setItem("updateDisabled", 'true'); 

И получить его как

var disabled = localStorage.getItem("updateDisabled"); 
if (disabled=='true') $('#update').attr('disabled', disabled); 
window.console && console.log(masterData,count); 
$(this).toggle(count==masterData.length); 
+0

Спасибо за предоставление ответа. Я попробовал предложенный вариант. Я все еще вижу, что кнопка включена, когда я перехожу на следующую страницу. –

Смежные вопросы