Ho un form di registrazione con un campo userid dove inserire l'id utente. Nel momento in cui viene scritto un nuovo id utente, tramite ajax faccio un controllo sul database per scrivere in tempo reale mentre l'utente scrive se quell'id è libero o già occupato.
JS:
AJAX:codice:$("input[name='userid']").keyup(function() { var id = $(this).val(); $('#verifica').load('ajax/ajaxVerificaNick.jsp?id='+id); var span=$("#verifica"); if(span.text()=="Ok"){ $(span).toggleClass("Ok",true); }else $(span).toggleClass("Ok",false); });
PEZZO HTML:codice:<%@page import="it.polito.elite.qax.db.UserDataDAO"%><%@page contentType="text/html" pageEncoding="UTF-8"%><% String id=request.getParameter("id"); UserDataDAO Duser=new UserDataDAO(); if (Duser.controllaUser(id)) out.print("userid already exist"); else out.print("Ok"); %>
codice:<div class="in"> <label for="user">Userid*: </label> <input id="user" name="userid" class="required number"> <span id="verifica"></span> </div>
Io vorrei che se mi viene scritto Ok(id valido) venga aggiunto allo span la classe ok alla quale poi dirò che il colore della scritta deve essere verde. Di per se lo fa ma in ritardo di un passaggio. Se per es esiste già un utente con id =1 ma non 12, quando clicco 1 nello span viene scritto 'utente non valido', quando aggiungo il 2 mi dice 'ok' ma la classe ok lo aggiungo solo se al 12 aggiungo un altro numero come se rimanesse alla scritta precedente, come mai? avengo messo il toggleClass subito dopo la parte di ajax nel momento in cui digito 12 lo span.text() non dovrebbe leggere già come valore Ok anzichè user already exist?

Rispondi quotando