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

    cambio stato checkbox = cambio valore campo testo

    ciao a tutti!
    premetto che di javascript so ben poco,ma ci provo...ho bisogno che al cambio di stato di un checkbox mi cambi anche il valore di un campo hidden correlato.
    mi sono fatto un codice del genere:

    codice:
    table_value = rstabval("Value")
                          Response.Write ("VALUE: ") & table_value
                          if table_value="ON" or table_value="1" or table_value = True then
    		                ck = "checked"
    		                valore="1"
    	                  else
    		                ck = ""
    		                valore="0"
    	                  end if
    	                  if editable = True or editable = "1" or editable = "ON" then
    		                disabled = ""
    	                  else
    		                disabled = "disabled"
    	                  end if
                        %>
                        <INPUT TYPE="checkbox" NAME="c<%=idproperties%>" VALUE="ON" <%=ck%> onClick="this.form.elements['<%=idproperties%>'].value=(this.checked)?1:0"<%=disabled%>>                    
                        <input type="text" name="<%=idproperties%>" value="<%=valore%>">
                        <%
                          end if
    ma mi da errore il javascript e dice:

    'this.form.elements.89' è nullo o non è un oggetto...e infatti se clicco sul checkbox il valore del campo testo non cambia.
    qualcuno sa darmi una mano?

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    c'è il tag form?
    Posta solo l'html generato dall'asp (prendilo dal browser con visualizza HTML)

  3. #3
    questo è quanto viene generato:

    <INPUT TYPE="checkbox" NAME="c89" VALUE="ON" onClick="this.form.elements['89'].value=(this.checked)?1:0">
    <input type="text" name="89" value="0">

  4. #4
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    hum... sicuramente è il numero come name che genera errore.
    I nomi degli elementi devono iniziare sempre con lettere
    modifica così
    codice:
    <INPUT TYPE="checkbox" NAME="c<%=idproperties%>" VALUE="ON" <%=ck%> onClick="this.form.elements['x<%=idproperties%>'].value=(this.checked)?1:0"<%=disabled%>>                    
                        <input type="text" name="x<%=idproperties%>" value="<%=valore%>">
    e poi ricordati che riceverai il parametro con la x iniziale

  5. #5
    eh si,infatti questo ricevere il parametro con la x iniziale mi comporta non pochi problemi.
    è proprio impossibile avere un numero?ho provato anche convertendo in stringa ma non funziona...
    non esiste nessun escamotage?ho bisogno che sia per forza un numero,devo distinguerlo da dei campi statici che si chiamano con nomi,e quelli dinamici (appunto) si chiamano con dei numeri...

  6. #6
    niente?

  7. #7
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    potresti fare una funzioncina che scorre tutti gli elementi del form e trova quello col nome numerico
    codice:
    function NomeFunzione(cc){
      var ff=cc.form
      for(var i=0;i<ff.elements.length;i++)
        if(ff.elements[i].name==cc.name.substr(1))
          ff.elements[i].value=(cc.checked)?1:0
    }
    e poi nel checkbox metti onClick="NomeFunzione(this);"

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.