javascript functie tegelijk uitvoeren (Ajax)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
function opmerking(){
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
viewproject(uniqueid,taskname);
email(project,'opmerking',door,opmerking,'levering@****.nl');
}
}
var opmerking = escape(CKEDITOR.instances['editor1'].getData());
var uniqueid = escape(document.getElementById("uniqueid").value);
var project = document.getElementById("project").value;
var door = document.getElementById("door").value;
var currentTime = new Date();
var taskname = "<center><b>Opmerking is opgeslagen "+ currentTime.getHours( ) +":"+ currentTime.getMinutes( ) +":"+ currentTime.getSeconds( ) + "</center></b>";
ajaxRequest.open("POST","./includes/viewproject.php",true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("nocache=" + new Date( ).getTime() + "&opmerking=" + opmerking + "&uniqueid="+ uniqueid + "&editor1=1");
}
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
viewproject(uniqueid,taskname);
email(project,'opmerking',door,opmerking,'levering@****.nl');
}
}
var opmerking = escape(CKEDITOR.instances['editor1'].getData());
var uniqueid = escape(document.getElementById("uniqueid").value);
var project = document.getElementById("project").value;
var door = document.getElementById("door").value;
var currentTime = new Date();
var taskname = "<center><b>Opmerking is opgeslagen "+ currentTime.getHours( ) +":"+ currentTime.getMinutes( ) +":"+ currentTime.getSeconds( ) + "</center></b>";
ajaxRequest.open("POST","./includes/viewproject.php",true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("nocache=" + new Date( ).getTime() + "&opmerking=" + opmerking + "&uniqueid="+ uniqueid + "&editor1=1");
}
Gewijzigd op 24/09/2012 10:58:25 door Marvin H
en wat is function email()
?
Hoe kan ik ervoor zorgen dat deze beide tegelijk uitgevoerd worden en niet één voor één?
Dus wat knippen/plakken met de php-files voor email en viewproject.
Dan gebeurt het sowieso in 1 verzoek en dus tegelijkertijd.
Ofwel ...
Ofwel herschik je de twee javascript functies een beetje, zodat ze op mekaar wachten.
Dan ga je de ene functie pas aanroepen op het moment dat de vorige stap klaar is. En dan stel je de display van viewproject() naar het scherm van de gebruiker wat uit tot alles klaar is.
Kan je die functies eens posten?
De functies hoeven niet op elkaar te wachten. Ik zoek een manier (o.a. voor deze functie) om verschillende functies van javascript tegelijk uit te voeren, zonder dat ze op elkaar wachten.
Het uitvoeren van viewproject() gebeurt al in de respons van een ajax request.
Dus wanneer viewproject() wordt uitgevoerd, is het contact met viewproject.php al gemaakt (en je hebt succesvol een antwoord terug).
Vandaar mijn vraag wat die functies verder nog doen.
Moet viewproject() nog eens contact opnemen met de server? email() moet sowieso nog eens langs de server.
Zolang ik niet weet wat die twee functies precies zijn, kan ik niets doen.
Viewproject()
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function viewproject(uniqueid,taskname){
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
document.getElementById("content").innerHTML = ajaxRequest.responseText;
if (CKEDITOR.instances['editor1'] || CKEDITOR.instances['editor2']) {
delete CKEDITOR.instances['editor1']};
CKEDITOR.replace( 'editor1',{height: 175});
if(taskname != undefined){
if(taskname != ''){
document.getElementById("content_float_header").innerHTML = taskname;
document.getElementById("content_float_header").style.visibility = 'visible';
document.getElementById("content_float").style.visibility = 'hidden';
HideMenus("content_float_header");
}
}
}
}
locked(uniqueid,'0');
ajaxRequest.open("POST","./includes/viewproject.php",true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("nocache=" + new Date( ).getTime() + "&uniqueid=" + uniqueid);
}
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
document.getElementById("content").innerHTML = ajaxRequest.responseText;
if (CKEDITOR.instances['editor1'] || CKEDITOR.instances['editor2']) {
delete CKEDITOR.instances['editor1']};
CKEDITOR.replace( 'editor1',{height: 175});
if(taskname != undefined){
if(taskname != ''){
document.getElementById("content_float_header").innerHTML = taskname;
document.getElementById("content_float_header").style.visibility = 'visible';
document.getElementById("content_float").style.visibility = 'hidden';
HideMenus("content_float_header");
}
}
}
}
locked(uniqueid,'0');
ajaxRequest.open("POST","./includes/viewproject.php",true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("nocache=" + new Date( ).getTime() + "&uniqueid=" + uniqueid);
}
email()
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function email(project,gewijzigd,door,inhoud,to){
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
//nothing
}
}
var projectsend = escape(project);
var gewijzigdsend = escape(gewijzigd);
var doorsend = escape(door);
var inhoudsend = inhoud;
var tosend = escape(to);
ajaxRequest.open("POST","email.php",true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("nocache=" + new Date( ).getTime() + "&project=" + projectsend + "&gewijzigd=" + gewijzigdsend + "&door=" + doorsend + "&inhoud=" + inhoudsend + "&to=" + tosend);
}
var ajaxRequest;
try{
ajaxRequest = new XMLHttpRequest();
} catch (e){
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
alert("Your browser broke!");
return false;
}
}
}
ajaxRequest.onreadystatechange = function(){
if(ajaxRequest.readyState == 4){
//nothing
}
}
var projectsend = escape(project);
var gewijzigdsend = escape(gewijzigd);
var doorsend = escape(door);
var inhoudsend = inhoud;
var tosend = escape(to);
ajaxRequest.open("POST","email.php",true);
ajaxRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
ajaxRequest.send("nocache=" + new Date( ).getTime() + "&project=" + projectsend + "&gewijzigd=" + gewijzigdsend + "&door=" + doorsend + "&inhoud=" + inhoudsend + "&to=" + tosend);
}
Weet je toevallig een oplossing?
Marvin
Niemand weet hoe ik de Ajax/javascript functies tegelijk kan draaien zonder dat ze op elkaar wachten?
[SLOTJE!]