per forza...
il settimeout devi metterlo dentro la funzione chiama_ajax()
così:
Codice HTML:
<script type="text/javascript">
// Ottieni la base url
url = document.location.href;
xend = url.lastIndexOf("/") + 1;
var base_url = url.substring(0, xend);
function chiama_ajax(url) {
//Inizia l'url con http?
if (url.substring(0, 4) != 'http') {
url = base_url + url;
}
// Crea un nuovo elemento JS
var jsel = document.createElement('SCRIPT');
jsel.type = 'text/javascript';
jsel.src = url;
//Appende l'elemento JS e quindi esegue la 'chiamata AJAX'
document.body.appendChild (jsel);
setTimeout('leggodiv()',5000);
}
function leggodiv() {
element = document.getElementById ("contentdiv");
string = element.innerHTML;
alert (string)}
</script>
e dimenticavo....togli la chiamata alla funzione leggodiv() dal bottone:
Codice HTML:
<div id="contentdiv"> </div> <input type="button" onClick="chiama_ajax('http://www.paternopolionair.it/script.php?id=ID52852857|MU452');" value="Interroga PHP">
ho fatto alcune prove, e ho constatato che basta chiamare la funzione leggodiv() nel file .php, dopo che ha stampato il risultato nel div, in questo modo:
Codice PHP:
<?php
$testo = $_GET[id];
?>
div = document.getElementById('contentdiv');
div.innerHTML = '<?php echo "il tuo ID: $testo"; ?>';
leggodiv();
in questo modo non hai bisogno di settare un timeout nel file html
funziona provalo!!!
quindi codice finale file html:
Codice HTML:
<script type="text/javascript">
// Ottieni la base url
url = document.location.href;
xend = url.lastIndexOf("/") + 1;
var base_url = url.substring(0, xend);
function chiama_ajax(url) {
//Inizia l'url con http?
if (url.substring(0, 4) != 'http') {
url = base_url + url;
}
// Crea un nuovo elemento JS
var jsel = document.createElement('SCRIPT');
jsel.type = 'text/javascript';
jsel.src = url;
//Appende l'elemento JS e quindi esegue la 'chiamata AJAX'
document.body.appendChild (jsel);
//chiamare leggodiv() con un timeout da qui non serve
//setTimeout('leggodiv()',1000);
}
function leggodiv() {
element = document.getElementById ("contentdiv");
string = element.innerHTML;
alert (string)}
</script>
<div id="contentdiv"> </div> <input type="button" onClick="chiama_ajax('http://www.paternopolionair.it/script.php?id=ID52852857|MU452');" value="Interroga PHP">