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

    [asp.net] Funzione js su TextBox

    Salve,

    In un form ho una textbox(<asp:textbox...), vorrei che all'evento js OnChange venisse eseguita la funzione, sempre js ovviamente, Validate('ora');, come faccio?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di Nazareno
    Registrato dal
    Mar 2001
    residenza
    Udine
    Messaggi
    176

    Bè...

    Ciao! L'ho fatto qualche centinaio di volte...
    Nel code-behind della pagina, imposti un attributo per la textbox utilizzando il suo ID. Supponiamo che si chiami TextBox1:

    TextBox1.Attributes["OnChange"] += "return(Validate('ora'));";

  3. #3
    Fatto e non mi funziona, scusami perchè fai +=

  4. #4
    Utente di HTML.it L'avatar di Nazareno
    Registrato dal
    Mar 2001
    residenza
    Udine
    Messaggi
    176

    onchange

    0) L'impostazione dell'attributo devi farla nel Page_Load
    1) onchange (tutto in minuscolo, Javascript è case-sensitive)
    2) prova a mettere un window.alert nella tua funzione per vedere se almeno ci entra
    3) += serve nel caso ci siano altri funzioni associate all'evento. Nel tuo caso, puoi tranquillamente scrivere solo =
    4) la tua funzione Validate deve stare in un blocco <script></script>
    nel tag HEAD della pagina html, o in file .js linkato alla pagina

    Di più, puoi solo postare il codice della pagina.

  5. #5
    E' tutto apposto quello che mi hai chiesto, la function viene raggiunta ma non capisco perchè non funziona, posto un po di codice:

    ##FUNZIONE JS##
    if((form_dati.tbOre.value>23)||(isNaN(form_dati.tb Ore.value))||(form_dati.tbOre.value==""))
    form_dati.tbOre.value = "00";

    ##NEL PAGE_LOAD DI ASPX##
    tbOre.Attributes("onchange") = "ValidateOrario('ore');"
    tbOre.Attributes("onchange") = "ValidateOrario('minuti');"

    In pratica mi serve che nelle 2 textbox vengano messi i valori giusti per l'orario

  6. #6
    Utente di HTML.it L'avatar di Nazareno
    Registrato dal
    Mar 2001
    residenza
    Udine
    Messaggi
    176

    Mah...

    A occhio e croce sostituirei tutti i
    form_dati.tbOre
    con
    doment.forms["form_dati"].getElementById("tbOre")

    e inoltre il valore di una textbox è una stringa quindi dovresti prima convertirlo in intero con la funzione parseInt

    var myform = doment.forms["form_dati"];

    var tbOre = myform.getElementById("tbOre");

    if (parseInt(tbOre.value) > 23 || isNaN(tbOre.value) || tbOre.value=="")

  7. #7
    Utente di HTML.it L'avatar di Nazareno
    Registrato dal
    Mar 2001
    residenza
    Udine
    Messaggi
    176
    Anzi, meglio così:

    if (tbOre.value=="" || parseInt(tbOre.value) > 23 || isNaN(parseInt(tbOre.value)))

  8. #8
    Ho risolto, avevo mancato un ";"...grazie 1000 per l'aiuto...

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.