Переменная не обновляется при нажатии кнопки? - PullRequest
1 голос
/ 10 августа 2010

Я делаю простой скрипт jQuery, который позволит вам что-то изменить одним нажатием кнопки.Моя проблема заключается в том, что если я изменю значение (отмечен), а затем нажму кнопку отправки, он распознает его как значение по умолчанию.Если вы сделаете это по умолчанию, он будет отключен, поэтому, если вы отметите его (включите), а затем нажмете кнопку отправки, это будет команда по умолчанию (выкл).Я знаю это, потому что я использую локальное хранилище для сохранения настроек.Поэтому, если Вы отметите это, обновите, а затем нажмете «Отправить», он выполнит правильное действие.

Вот мой jQuery:

$(document).ready(function(){ 
var test='false'

if (localStorage.getItem('simpSet')){
element = document.getElementById('simplify');
var test=localStorage.getItem('simpSet');

if(test == 'true'){
element.setAttribute('checked');
}

console.log(test);
}

$('#simplify').live('click', function(){

if ($('#simplify').is(':checked')){
var test='true'
console.log(test);

}else{
var test='false'
console.log(test);
}
localStorage.setItem('simpSet', test);

});

$('#button').live('click', function(){
console.log(test);

if(test == 'true'){
console.log('isTrue');
$('#test').css('background', 'blue');
return false;
}else{
$('#test').fadeOut('slow');
return false;
}

});

});

и моя простая разметка

<span id='simcont'>Simplify<input type='checkbox' id='simplify'></span>

<input type="submit" val='Go' id='button'>
<div id='test'>Testing simplifier</div>

Есть идеи, что случилось?

Пример: http://kod.singaming.net/simplify/

По умолчанию текст исчезнет, ​​если вы проверите его, он ДОЛЖЕН превратить фон текста в синий.Однако это работает неправильно, поэтому оно просто исчезнет, ​​но если вы отметите его, обновите, а затем отправьте, и фон станет синим.

1 Ответ

1 голос
/ 10 августа 2010

я бы поменял

var test = 'true';

до

test = 'true';

в области событий вашего флажка. Переменная недоступна вне функции события click.

edit: То же самое касается снятия отметки. Убрать 'var'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...