0

サーバーからレコードを取得し、そのレコードをフィルター処理して、クラス EMP_EMAIL フォームを介してすべての電子メールを取得しようとする ajax に取り組んでいますが、最初の 1 つしか得られません。私がやっていることは、1 つの関数でサーバーからレコードを取得し、それをダイアログの横に表示することです。私が取得している記録は、パスポートが 7 日後に期限切れになる従業員の記録です。そのため、メールを送信する必要があり、そのためにダイアログボックスの各従業員データの下にボタンを配置しました。今その目的のために、適切な人に電子メールを送信できるように、それぞれのボタンを備えたすべての従業員の電子メールが必要です。私がやっていることは、ある機能でレコードを取得し、電子メールに別の機能を使用することです。そのためには、最初の機能からすべての従業員の電子メールを必要とし、それを別の機能に渡しますが、問題は、それぞれの電子メールをすべて取得できないことですが、最初の1つ。class="EMP_EMAIL" を持つユーザーに対して同じ構造が何度も繰り返されるためです。

以下はそのためのコードです

   var employee_email='';
   var flag = false;

   function showCustomer()
   {
  // fire off the request to ajax_stufflist.php
  request = $.ajax({
    url: "ajax_stufflist.php?"+url,
    type: "post",
    success: function(data){
        if(data != ''){
    var response = $(data).find("#gmp_stuff").html();
    employee_email=$(response).find(".EMP_EMAIL>span").html();
    //alert(employee_email);
    $("#user_responses").html(response);

            $("#user_responses").dialog({
                dialogClass:'transparent',
                resizable: false,
                draggable: false,
                modal: true,

                width: 1000,
                autoOpen: false,
                overlay: { opacity: 0 }
            });

            $('#user_responses').dialog('open');
            $('#user_responses').css('display','');
            flag = true;
        }
    },
    error:function(){
        alert("failure");
        $("#user_responses").html('error occured');
      }
  });

}

function sendEmail(){
   if(flag)
   {
    request = $.ajax({
        url: "send_email.php?"+employee_email,
        type: "post",
        success: function(data){
            $("#email_responses").html();
        },
        error:function(){
            alert("failure");
            $("#email_responses").html('error occured');
        }
    });
}
else
    alert('Sending email is unavailable currently. PLease try after some time.');
}

これが入力ボタンです。

 <div class="send_email_notification">
        <input type="submit" value="Send Email" onClick="sendEmail();">
    </div>

問題を詳しく説明するために最善を尽くしましたが、成功したかどうかはわかりませんが、最終的には、ajax の後に返されたすべてのユーザーのメールを取得する必要があり、[メールの送信] ボタンをクリックすると、そのメールが送信されます。特定のユーザー。

4

2 に答える 2

0
I reviewed your code, The following suggestion may help:

Make sure the showCustomer() function execute before sendEmail() function.      

Eg.

 function sendEmail(){
   showCustomer(); 
   if(flag){....}
 }    


If your want to take email address from browser use .text() instead of .html()

Eg.      

  employee_email = $(response).find(".EMP_EMAIL>span").text();
于 2013-10-31T10:40:06.227 に答える