Redefinire variabila la clic

Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
andras
Mesaje: 430

Redefinire variabila la clic

Salut,
am in pagina o functie in JS (simplificat):

Cod: Selectaţi tot

<script type="text/javascript">
function afiseazasetare(){            // afiseaza tabla pentru setare pozitie
var board ='';
board = ChessBoard('board', {
  draggable: true,
  dropOffBoard: 'trash',
  sparePieces: true
});
$('#okBtn').on('click', punefen);
function punefen(){
	var fenpozitie = board.fen();
	document.getElementById('fenset').value = fenpozitie;
}
}
</script>
Daca o rulez (onclick) prima data functioneaza bine, dar daca fac onclick a doua oara pe buton nu mai functioneaza corect proprietatea draggable, desi am reinitializat variabila board (var board ='';). Ca sa functioneze corect trebuie sa reincarc pagina, ceea ce ma incomodeaza.
Cum pot rezolva? Multumesc.

MarPlo Mesaje: 4343
Salut,
Asa cum ai codul, la clic pe butonul #okBtn nu se modifica nimic la variabila board, ci se executa ce e in functia punefen(), unde doar preia acea variabila fara alta resetare.
Incearca asa, setarea variabilei in functia apelata la clic:

Cod: Selectaţi tot

<script>
function afiseazasetare(){ // afiseaza tabla pentru setare pozitie
  function punefen(){
    var board = ChessBoard('board', {
      draggable: true,
      dropOffBoard: 'trash',
      sparePieces: true
    });
    document.getElementById('fenset').value = board.fen();
  }
  document.getElementById('okBtn').addEventListener('click', punefen);
}
</script>

Subiecte similare