2016-10-07 4 views
0

Ich habe zwei Skripte. Einer ist für jquery Formen und der andere, um ein div in Intervallen zu erneuern.Mehrere jquery document.ready-Skripte kombinieren

Ohne das Refresh-Skript funktionieren die Jquery-Posts. Wenn ich das Refresh-Skript hinzufüge, senden die Formulare den Standardweg, aber die Aktualisierung funktioniert. Ich nehme an, die Lösung besteht darin, sie zu kombinieren. Meine Bemühungen scheiterten. Hilfe!

UPDATE: Jedes Skript funktioniert so lange, wie das andere nicht im Code ist. Versuche zum Zusammenführen schlagen fehl. Ich habe das <form> als Referenz hinzugefügt. Zur Verdeutlichung, wenn beide vorhanden oder kombiniert sind, tritt der Standard/GET anstelle des ausgeführten Ajax auf. Die Aktualisierung funktioniert immer. Ich habe bestätigt, dass das Senden des Formulars vor der Aktualisierung keinen Unterschied macht.

AKTUALISIEREN 2: Wenn ich den Formularübermittlungscode in das DIV verschiebe, das aktualisiert wird, kann ich es richtig ausführen ABER nur, bis die Aktualisierung auftritt. Nach der ersten Ajax-Aktualisierung beginnt das Formular traditionell zu senden.

<script> 
 
    $(document).ready(function() { 
 
    $(".col-xs-4").load(\"statisticsDiv"); 
 
    var refreshId = setInterval(function() { 
 
     $(".col-xs-4").load('/statisticsDiv?randval='+ Math.random()); 
 
    }, 10000); 
 
    $.ajaxSetup({ cache: false }); 
 
    }); 
 
</script>")); 
 
    
 
<script> 
 
    $(document).ready(function() { 
 
    $('#myForm').ajaxForm(function() { 
 
    }); 
 
    }); 
 
</script>

<form id="myForm" action="http://192.168.1.150:2560/" method="get"> 
<input type="hidden" name="cleaner" value="on" /> 
<input type="submit" value="Toggle" /> 
</form> 

GELÖST: hinzugefügt dies das Element erneut zu binden kehrte nach dem DIV Refresh. Könnte nicht der richtige Weg sein, aber es funktioniert. Vorschläge verfeinern?

$(document).ajaxStop(function() { 
     $('#myForm').ajaxForm(function() { 
     }); 
    }); 
+0

einen Blick auf dieses Thema liegt SO http://stackoverflow.com/questions/5263385/jquery-multiple-document-ready – Rex

+0

Es gibt einige Syntaxfehler in Ihrem Code z.B. '.load (\" statisticsDiv ");' und '"));.. –

+0

Das Skript ist in C vergraben und ich muss dort entkommen. Ich habe sie vermisst, als ich es hier herausholte. – dotJake

Antwort

0

... so?

<script> 
    $(document).ready(function() { 
    $(".col-xs-4").load(\"statisticsDiv"); 

    var refreshId = setInterval(function() { 
     $(".col-xs-4").load('/statisticsDiv?randval='+ Math.random()); 
    }, 10000); 

    $.ajaxSetup({ cache: false }); 
    $('#myForm').ajaxForm(); 
    }); 
</script> 
+0

Noch erfrischt bei 10sec, aber das GET-Formular verwendet die Standardmethode, nicht jquery – dotJake

Verwandte Themen