Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    evento onchange: richiamare una js

    premessa: SUPER neofita di Js....

    ho una combo per la selezione dei colori che, all'evento onchange, dovrebbe richiamare un js che applica una formattazione ad una textarea.

    la cosa che reputavo più complicata (la js) funziona perfettamente, solo che non riesco a richiamarla....

    codice:
    <select id="colori" onchange="Addcolour('this.options[this.selectedIndex].value;')">
    <option value="black">Nero</option>
    </select>
    se faccio come sopra mi passa LETTERALMENTE "this.options[this.selectedIndex].value;"... dove sbaglio??!

    immagino sia banale..

  2. #2
    Devi togliere le virgolette quando richiami la funzione Addcolour():
    codice:
    Addcolour(this.options[this.selectedIndex].value);
    --Fletto i muscoli e sono nel vuoto--

  3. #3
    Originariamente inviato da Sballerio
    Devi togliere le virgolette quando richiami la funzione Addcolour():
    codice:
    Addcolour(this.options[this.selectedIndex].value);
    la funzione Addcolour l'ho creata io... se la chiamo con Addcolour('red'), mi passa il paramentro red... non credo siano le virgolette il problema

    codice:
    function Addcolour(col)
    {
    txtdacolorare=prompt('Inserire il testo da colorare','');
      if(txtdacolorare==undefined) return;
    txt="<span style='"+col+"'>"+txtdacolorare+"</span>";
    document.form.desc.value+=txt;
    }

  4. #4
    Ciao Andro,
    le virgolette sono il problema.
    quando fai :
    codice:
    txt="<span style='"+col+"'>"+txtdacolorare+"</span>";
    non stai attribuendo un colore al testo, style="red" non attribuisce il colore rosso al testo.

    devi scrivere :
    codice:
    txt="<span style='color: "+col+"'>"+txtdacolorare+"</span>";
    e come ti dicevo prima, per richiamare la funzione devi scrivere
    codice:
    Addcolour(this.options[this.selectedIndex].value);
    altrimenti passi this.options[this.selectedIndex].value come stringa, non il valore, semplicemente una stringa che potrebbe essere anche "pincopallino".

    Buon lavoro
    --Fletto i muscoli e sono nel vuoto--

  5. #5
    Originariamente inviato da Sballerio
    Ciao Andro,
    le virgolette sono il problema.
    quando fai :
    codice:
    txt="<span style='"+col+"'>"+txtdacolorare+"</span>";
    non stai attribuendo un colore al testo, style="red" non attribuisce il colore rosso al testo.

    devi scrivere :
    codice:
    txt="<span style='color: "+col+"'>"+txtdacolorare+"</span>";
    e come ti dicevo prima, per richiamare la funzione devi scrivere
    codice:
    Addcolour(this.options[this.selectedIndex].value);
    altrimenti passi this.options[this.selectedIndex].value come stringa, non il valore, semplicemente una stringa che potrebbe essere anche "pincopallino".

    Buon lavoro
    grazie 1000 per la pazienza e per la spiegazione..
    era un erroraccio banale, sarà per la poca dimistichezza con js, sarà per la 'fretta' ma manco me ne ero accorto, sintassi errata a parte, di aver passato style="red"... invece che style="colour:red"...

    dankiu..

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.