2016-06-27 15 views
1

Ich habe eine Schaltfläche senden, die den Wert mit POST-Methode auf die gleiche Seite sendet.Javascript Drücken der Taste in einem Intervall

<button id="log" class="btn bg-purple" formmethod=post value="2" name="start" formaction=start_server.php>Get Log</button> 

Wenn ich diesen Knopf drücke, bekomme ich das Protokoll aus der Datei in einer Liste mit PHP.

Was ich jetzt tun möchte, ist ein Skript mit Javascript zu machen, um automatisch die Schaltfläche "Get Log" zu drücken, um die Protokolldatei alle 2 Sekunden neu zu laden, so dass ich ein interaktives Protokoll haben kann, ohne den Knopf selbst zu drücken.

Ich habe dieses Skript versucht, aber nur die Warnung funktioniert, denke ich, da es die Protokolldatei überhaupt nicht neu lädt.

<script type="text/javascript"> 
    window.onload=function(){ 
    var auto = setTimeout(function(){ autoRefresh(); }, 100); 

    function submitform(){ 
     alert('test'); 
     document.button["log"].submit(); 
    } 

    function autoRefresh(){ 
    clearTimeout(auto); 
    auto = setTimeout(function(){ submitform(); autoRefresh(); }, 2000); 
    } 
    } 
</script> 
+1

ändern 'SetTimeout (function() {autoRefresh();}, 100); 'to' setInterval (funct ion() {autoRefresh(); }, 2000); '. –

+0

Ich habe es versucht, keine Änderungen. – Mirakurun

Antwort

1

Ersetzen Sie Ihr Skript mit diesem:

$(document).ready(function(){ 
    // this handles the click on yout "Get log" button 
    $("#log").click(function(){ 
     //alert('test'); 
     console.log("Click function"); 
     $("#log").submit(); 
    }); 


    // This sets an interval to simulate a click every 2 seconds. 
    auto = setInterval(function(){ 
     console.log("Interval iteration"); 
     $("#log").click(); 
    }, 2000); 
}); 
+0

Das warnt nicht einmal. Ich habe jQuery im Header aktiviert. – Mirakurun

+0

Vielleicht in einer ready() Funktion? –

+0

Ich habe Konsolenprotokolle hinzugefügt ... Überprüfen Sie die Konsole. –

0

eine ID zu Ihrem Formular angeben und diese Zeile ersetzen -

document.button["log"].submit(); 

Mit dieser -

document.getElementById('formID').submit(); 
Verwandte Themen