2 つの個別の ajax 関数の呼び出しに問題があります。ページ上のすべてのチェックボックス要素をループするループがあり、それらがチェックされている場合、データベース内のデータを移動する ajax 関数を呼び出します。次に、for ループの外側で、別の ajax 関数を呼び出してデータベースにアクセスし、結果を ID 要素に戻します。httprequests に別の名前を付けて、それらが戦わないようにする必要がありました。両方の関数が機能しますが、ループの外にある関数は高速になり、新しい/変更されたデータを取得しません。この外側のループ関数の前にアラートを置くと、機能します。setTimeout(myFunctio(), 3000) を使用しようとしましたが、うまくいきませんでした。
これが私のコードです。
function ungroupContact(){
group = document.getElementsByName("moveGroup")[0].value;
for(i=0;i<=25;i++){
if(document.getElementById('checkBox'+i)){
if(document.getElementById('checkBox'+i).checked){
var email = document.getElementById('checkBox'+i).value;
moveContact(email, group);
}
}
}
//alert("hello");
//setTimeout(alert("hello"),12000);
groupList1(group);
}
これは私の初めての投稿です。これが初心者である場合は申し訳ありません。現在、コンピューター サイエンスの学位を取得しています。
提案や助けをありがとう
申し訳ありませんが、私は ajax 関数を置くことを知っていたはずです。w3schools のレイアウトを使用しました。
function moveContact(email, group){
if (email=="" || group=="")
{
document.getElementById("sidebar2").innerHTML="Something wrong was entered";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp1=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp1=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp1.onreadystatechange=function()
{
if (xmlhttp1.readyState==1 || xmlhttp1.readyState==2 || xmlhttp1.readyState==3)
{
document.getElementById("sidebar2").innerHTML="<img src='images/loading.gif' alt='Loading'> ";
}
if (xmlhttp1.readyState==4 && xmlhttp1.status==200)
{
document.getElementById("sidebar2").innerHTML=xmlhttp1.responseText;
}
}
xmlhttp1.open("GET","core/moveContact.php?group="+group+"&email="+email,true);
xmlhttp1.send();
return;
}