salve..
vi espongo il mio problema con del codice js/ajax:
se uso questo:
tutto funziona... ma se faccio la stessa cosa provando ad usare una funzione di callback (così in fututo da non dovere ripetere codice):Codice:<p id='settingBoxTitle'>Logo & Titolo</p><p id='settingBoxSubTitle'>Imposta il logo, ed il titolo per il tuo forum.</p><div id='settingBoxContent'><p class='settingBoxContentTitle'>Scegli il titolo</p><form action='#' method='post'>Usa il campo sottostante per inserire il titolo del tuo forum.<p><input type='text' name='mainTitle' id='mainTitle' value='Scrivi il titolo' class='txtField' onblur='validateTitle();' /> <span id='spanCheck'> </span><span id='warning' style='border:1px solid red; filter:alpha(opacity=60); -moz-opacity:0.6; opacity: 0.6; margin:5px;'></span></p><p class='settingBoxContentTitle'>Logo</p>Seleziona un'immagine da utilizzare come logo.<p><input type='file' name='logoUploader' /></p><input type='submit' name='invia' value='Invia' class='inputBtn' /></form><div style='display:none;'><img src='./img_general/check0.png' /><img src='./img_general/check1.png' /></div></div> // e poi nello script function validateTitle() { var xmlhttp; if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById("spanCheck").innerHTML=xmlhttp.responseText; } } xmlhttp.open("POST","./php_ajax/validateTitle.php",true); xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); var parameter = "mainTitle=" + encodeURIComponent(document.forms[0].elements.namedItem("mainTitle").value); xmlhttp.send(parameter); }
non va, e non capisco il perchè... a me sembra tutto ok...Codice:<p id='settingBoxTitle'>Logo & Titolo</p><p id='settingBoxSubTitle'>Imposta il logo, ed il titolo per il tuo forum.</p><div id='settingBoxContent'><p class='settingBoxContentTitle'>Scegli il titolo</p><form action='#' method='post'>Usa il campo sottostante per scegliere il titolo del tuo forum.<p><input type='text' name='mainTitle' id='mainTitle' value='Scrivi il titolo' class='txtField' onblur='validateTitle(\"mainTitle\",\"spanCheck\");' /> <span id='spanCheck'> </span><span id='warning' style='border:1px solid red; filter:alpha(opacity=60); -moz-opacity:0.6; opacity: 0.6; margin:5px;'></span></p><p class='settingBoxContentTitle'>Logo</p>Seleziona un'immagine da utilizzare come logo.<p><input type='file' name='logoUploader' /></p><input type='submit' name='invia' value='Invia' class='inputBtn' /></form><div style='display:none;'><img src='./img_general/check0.png' /><img src='./img_general/check1.png' /></div></div> function ajaxFunction(inputName,phpFile,theRealFunction) { var xmlhttp; if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp = new XMLHttpRequest(); } else { // code for IE6, IE5 xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange = theRealFunction; xmlhttp.open("POST",phpFile,true); xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); var parameter = inputName + "=" + encodeURIComponent(document.forms[0].elements.namedItem(inputName).value); xmlhttp.send(parameter); } function validateTitle(inputName,spanID) { // inputName è una variabile che contiene il nome del campo input in cui è inserito il testo // spanID è una variabile che contiene l'id dello span in cui inserire l'immagine con l'esito dell'operazione ajaxFunction(inputName,"./php_ajax/validateTitle.php",function() { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById(spanID).innerHTML=xmlhttp.responseText; } }); }
il file php è lo stesso per entrambi, e dunque il problema direi che non sta li... quindi evito di postare...

LinkBack URL
About LinkBacks
