Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    esecuzione periodica di uno script

    salve.

    Ho costruito uno script che permette ad un utente di visualizzare dei dati, che risiedono in un web server sotto forma di file xml. ora, i dati vengono aggiornati ciclicamente dal server, e per poter vedere i dati che cambiano, ho bisogno di richiamare ciclicamente lo script che ne permette la visualizzazione.... si può? come si fa? questo è il codice dello script


    [CODE]

    <script>
    xmlDoc=loadXMLDoc("../system/dataviews/Sample.xml");

    x=xmlDoc.getElementsByTagName('value');

    y=xmlDoc.getElementsByTagName('tag');

    for (i=0;i<x.length;i++)
    {
    document.write(y[i].getAttribute('name'));
    document.write(" ");
    document.write(x[i].childNodes[0].nodeValue);
    document.write("
    ");
    }
    </script>
    [CODE]

  2. #2
    il primo problema è che non puoi usare il document.write per una questione di Scope, quindi devi impostare un elemento contenitore che verrà aggiornato periodicamente.

    codice:
    <div id="UserData">
       
    </div>
    Poi imposti la funzione in modo che sia eseguibile con una chiamata singola:

    codice:
    var UpdateUserData = function(){
       var xmlDoc=loadXMLDoc("../system/dataviews/Sample.xml");
    
       var x=xmlDoc.getElementsByTagName('value');
    
       var y=xmlDoc.getElementsByTagName('tag');
       var i, str = "";
       for (i=0;i<x.length;i++){
          str += y[i].getAttribute('name');
          str += " ";
          str += x[i].childNodes[0].nodeValue;
          str += "
    ";
       }
       document.getElementById('UserData').innerHTML = str;
    }
    Infine, dopo il caricamento della pagina puoi usare l'istruzione setInterval per impostare l'aggiornamento:

    codice:
    var secondBetweenUpdates = 5;
    window.onload = function(){
       var timer = setInterval(UpdateUserData, secondBetweenUpdates * 1000);
    }
    I DON'T Double Click!

  3. #3
    grazie 10000000000000000

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 © 2024 vBulletin Solutions, Inc. All rights reserved.