Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380

    jquery+ajax e field.focus()

    ciao, ho implementato un semplice form da validare con l'ausilio di jquery+chiamata ajax ad un file validation.php che restituirà l'esito della validazione di ciascun campo.
    L'eventuale messaggio d'errore verrà visualizzato in una popup dialog con jquery

    Tutto funziona bene, ma non riesco ad evitare, in caso di errore, (quindi di comparsa della popup) il reset dei campi del form.

    Se validassi solo in javascript potrei utilizzare la funzione focus() in caso di errore ad es. $("input#nome").focus(); ed il problema non si porrebbe, nel mio caso invece non riesco proprio a risolvere, cioè capire come evitare il reset dei campi in caso di errore in uno di essi

    Ho provato ad inserire la stringa $("input#nome").focus(); in vari punti del codice ma non so se in questo caso è la strada giusta, cioè se il metodo è giusto e magari sbaglio altro.
    Spero sia chiaro il mio problema e spero in un vostro consiglio

    Grazie cmq per l'attenzione.

    Allego parte del codice
    codice:
    $(".button").click(function() {
        var nome = $("input#nome").val();
        var email = $("input#email").val();
        var dataString = 'nome='+nome+'&email='+email;
        $.ajax({
    	       type: "POST",
    		url: "validation.php",
    		data: dataString,
    		cache: false,
    		success: function(html){
    		var risposta = html;
    		 if (risposta != ''){ // sono in Errore
    					
                         $("div#display_user").dialog({
    			bgiframe: false,
    			modal: true,
    			buttons: {
    					'Ok': function(){
    				         $(this).dialog("close");
    					},
    				}
    				
    			}).html(html);
    			}
    P.s.: non sono in remoto
    If you think your users are idiots, only idiots will use it. DropBox

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Il tasto con classe .button e di tipo submit? Il richiamo lo fai al onload? Posta anche html del form
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    il tasto è di tipo submit
    codice del form:
    codice:
    <form id="pre-process" action=""method="post">
     <input type="text" name="nome" id="nome" class="input_nome" />
     <input type="text" name="email" id="email" class="input_email" />
     <input type="submit" name="submit" value="Salva" class="button" id="button" />
    </form>
    il richiamo avviene con il click sul button:

    codice:
    $(".button").click(function()
    Grazie per la risposta
    If you think your users are idiots, only idiots will use it. DropBox

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Cambia il tasto in button e dovresti risolvere
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    ..ed ecco uno dei nodi al pettine
    ho mod la riga con
    codice:
    <input type="button" name="button" value="Salva" class="button" id="button" />
    poi, nella funzione ho inserito
    codice:
    $(".button").click(function() {
        var nome = $("input#nome").val();
        $("input#nome").focus(); 
    ....
    ma non ho risolto il campo si svuota.
    Molto probabilmente sbaglierò la sua collocazione? ...sarà questo l'ultimo tassello?

    grazie ancora
    If you think your users are idiots, only idiots will use it. DropBox

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Il campo si vuota perché probabilmente viene comunque processo il form (come riprova premi il tasto una volta chiusa la dialog d'errore fai un reload di tutta la pagina F5 se mostra l'avivso di sitema è perché il form viene processato) in questo caso prova inserendo nel form onsubmit="return false" se non funziona mi sa che devi mettere la pagina online cosi da poter fare dei test più accurati e avere un quadro compelto del documento
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    non ho risolto nemmeno così
    appena posso metto la pagina online ed aggiorno il post

    intanto infinite grazie!!
    If you think your users are idiots, only idiots will use it. DropBox

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.