Visualizzazione dei risultati da 1 a 9 su 9

Discussione: allert su cella vuota

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283

    allert su cella vuota

    come da titolo vi chiedo se è possibile creare un allert se in una cella riporta un determinato testo.

    ho un form dove controllo i campi con vari allert

    ho il campo username che controllo la disponibilità (se è esistente o no)
    con ajax, nella cella accanto al campo viene scritto username non disponibile, però non c'è nessun allert che blocca l'utente e quindi pensavo di far apparire un allert quando nella cella viene scritto username non disponibile

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Lella ...se continui a chiamarli allert la vedo dura
    conviene che la funzione che gestisce il responso ottenuto via ajax faccia apparire l' alert,
    o comunque setti una variabile globale con cui verificare che vada aperto in altro momento

    se vuoi una mano posta tutto il codice significativo o, meglio, lascia un link

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    il codice AJAX è questo:
    -------------------------------
    var XMLHTTP;

    function RichiestaAJAXusername(stringa)
    {
    if (stringa.length > 0)
    {
    var url = "/base/negozio/pagine/controlla_username.asp?testo=" + stringa.toUpperCase();
    XMLHTTP = QualeBrowser(GestioneStato);
    XMLHTTP.open("GET", url, true);
    XMLHTTP.send(null);
    }
    else
    {
    document.getElementById("nomi").innerHTML = "";
    }
    }

    function GestioneStato()
    {
    if (XMLHTTP.readyState == 4)
    {
    var R = document.getElementById("nomi");
    R.innerHTML = XMLHTTP.responseText;
    }
    }

    function QualeBrowser(QualeBrowser)
    {
    if (navigator.userAgent.indexOf("MSIE") != (-1))
    {
    var Classe = "Msxml2.XMLHTTP";
    if (navigator.appVersion.indexOf("MSIE 5.5") != (-1));
    {
    Classe = "Microsoft.XMLHTTP";
    }
    try
    {
    OggettoXMLHTTP = new ActiveXObject(Classe);
    OggettoXMLHTTP.onreadystatechange = QualeBrowser;
    return OggettoXMLHTTP;
    }
    catch(e)
    {
    alert("Errore: l'ActiveX non verrà eseguito!");
    }
    }
    else if (navigator.userAgent.indexOf("Mozilla") != (-1))
    {
    OggettoXMLHTTP = new XMLHttpRequest();
    OggettoXMLHTTP.onload = QualeBrowser;
    OggettoXMLHTTP.onerror = QualeBrowser;
    return OggettoXMLHTTP;
    }
    else
    {
    alert("L'esempio non funziona con altri browser!");
    }
    }
    -------------------------------

    la cella è id="nomi"



    il fatto è che io conosco asp ma javascript e ajax zero.

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    se vuoi far apparire l' alert subito
    codice:
    ...
    var R = document.getElementById("nomi");
    R.innerHTML = XMLHTTP.responseText;
    if(XMLHTTP.responseText.indexOf('username non disponibile')>-1) alert('username non disponibile');
    ...

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    ho copiato la riga dove mi hai detto, non dà nessun errore però l'alert non appare

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    tutto ok avevo dimenticato una cosa, scusa ancora e se volessi che l'alert apparisse quando clicco su invia ?

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    visto che identificare questa cella non e' un problema, quando invii richiama
    codice:
    if(document.getElementsById('nomi').innerHTML=='username non disponibile'){
      alert('username non disponibile');
      return false
      // o, comunque tu invii il form, non farlo procedere
    }

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2002
    Messaggi
    283
    ciao xinod

    ti volevo ringraziare dell'aiuto ho risolto grazie a i tuoi consigli.

    per l'alert finale ho inserito questo codice all'interno dello script che mi controllava il form

    ---------------------------------------------------------------
    if(XMLHTTP.responseText.indexOf("username non disponibile")>-1){
    alert('username non disponibile')
    f.username.focus();
    return false; }

    ciao a presto

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    alla prossima

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.