Domanda

Sto facendo un semplice script jQuery che vi permetterà di cambiare qualcosa sul clic di un pulsante. Il mio problema è che se cambio il valore (controllato), quindi fare clic sul pulsante di invio, che lo riconoscerà come predefinito. Se si esegue questa operazione sul default, è impostato su off, quindi se si controlla via (acceso) e quindi fare clic sul pulsante di invio, sarà il comando predefinito (off). Lo so perché io uso di archiviazione locale per salvare le impostazioni. Quindi, se si controlla via, aggiorna, e quindi fare clic su Invia, lo farà l'azione corretta.

Ecco il mio 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;
}

});

});

e il mio semplice markup

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

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

Tutte le idee che non va?

Esempio: http://kod.singaming.net/simplify/

Per impostazione predefinita, il testo svanirà, se controlli, dovrebbe girare sfondo blu del testo. Questo non funziona bene però così sarà solo dissolvenza, ma se si controlla fuori, verticale e fate presentare si trasformerà sfondo blu.

È stato utile?

Soluzione

Vorrei cambiare

var test = 'true';

a

test = 'true';

nella vostra zona evento casella di controllo. La variabile non è al di fuori accessibili della funzione click evento.

modifica: La stessa cosa vale per deselezionando. Rimuovere il 'var'

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top