Niestety nie pomogło :-(.
Jak sprawdzam firebugiem to widzę dziwną rzecz:
skrypt jak gdyby startuje dwa razy:
http://localhost/~domena2222222/basicform.php?txtname=domenai
http://localhost/~domena2222222/basicform.php1 się zatrzymuje jak już mam pokaz efektów wyszukiwań, a ten drugi ciągle jest przetwarzany.
Wygląda na to, jakby basicform startował 2 razy - nie wiem gdzie leży problem?
Sprawdzam i szukam.
Problem jest chyba w formularzu:
<form action="" method="get" > <td>Sprawdź czy domena jest dostępna
</td> <input type="text" name="txtname" id="txtname" />
<input type="button" value="submit" onClick="ajaxget()" id="submit"/>
Problem z: onClick="ajaxget()"
ale nie jestem pewien i nie wiem jak to rozwiązać...
Już wiem - problem leży po stronie ajaxu:
url: 'basicform.php',
ale nadal nie wiem jak go usunąć :-(
Ktoś ma jakiś pomysł?Rozwiązałem to w "dziwny sposób":
zmieniłem poniższy kod i działa ok:
function ajaxget(){
var mygetrequest=new ajaxRequest()
mygetrequest.onreadystatechange=function(){
if (mygetrequest.readyState==4){
if (mygetrequest.status==200 || window.location.href.indexOf("http")==-1){
document.getElementById("result").innerHTML=mygetrequest.responseText ;
$('#loading').hide();
}
else{
alert("An error has occured making the request")
}
}
}
var txtnamevalue=encodeURIComponent(document.getElementById("txtname").value)
mygetrequest.open("GET", "basicform.php?txtname="+txtnamevalue, true)
mygetrequest.send(null)
}
<script type="text/javascript"> $(document).ready(function() {
$('#loading').hide();
$('#submit').click(function(){
$.ajax({
url: 'basicform.php',
//cache: false,
timeout: '500',
success: function(data) {
$('#result').html(data);
$('#loading').hide('slow');
},
beforeSend: function() {
$('#loading').show();
}
});
});
});
W funkcji: function ajaxget() - w drugim ifie dopisałem:
$('#loading').hide();W javascript odpowiedzialne za jquery - dopisałem:
timeout: '500',W Firebug'u dostaję info, że
skrypt startujący dwa razy:
http://localhost/~domena2222222/basicform.php?txtname=domenai
http://localhost/~domena2222222/basicform.phpten drugi zwraca błąd po pół sekundzie i się wywala, a jak skończy się pierwsze wywołanie basicform (z parametrem) - animacja znika.
Wszystko działa teraz ok, ale czy takie rozwiązanie, które gdzieś tam ma błąd może być ok?