2013-05-08 44 views
1

我有一個包含多個複選框的表單,包含電子郵件地址,用戶可以發送郵件到打勾/檢查打開本地電子郵件客戶端(例如:outlook express)的任何電子郵件地址,我如何打開本地電子郵件客戶端(例如:Outlook Express)從下面的代碼?Jquery Ajax調用郵件到

$("#btn_sendmsg").click(function(){ 
    var parameters = $('#form1').serialize(); 
    //alert(parameters); 
    $.ajax({ 
     url: 'ajax_call.php', 
     data: parameters, 
     type: 'POST', 
     success: function(data){ 
      alert(data); 
     } 
    }); 
}); 

ajax_call.php

if(!empty($_POST['ids'])){ 

    foreach($_POST['ids'] as $email){ 
     if($emails == ""){ 
      $emails = $email; 
     }else{ 
      $emails .= ";" . $email; 
     } 
    } 

    if(!empty($emails)){ 
     echo " 
     window.location = \"mailto:[email protected][email protected]&bcc=".$emails."&subject=Hello\"; 

    } 

} 

else if(empty($_POST['ids'])){ 
    echo 'No Recepient Selected'; 

} 

謝謝!

+0

你丟失了'$''這裏( 「#btn_sendmsg」)'.. - >'$( 「#btn_sendmsg」)' – 2013-05-08 09:44:31

+0

你可以嘗試在ajax塊之後調用window.location函數,而不是在ajax_call.php – 2013-05-08 09:46:52

+0

@Sudip Pal中,謝謝你的提示,我把它移到了塊中。 – conmen 2013-05-08 09:51:03

回答

0

變化 PHP:

if(!empty($emails)){ 
     echo "mailto:[email protected][email protected]&bcc=".$emails."&subject=Hello"; 
} 

JS:

$("#btn_sendmsg").click(function(){ 
    var parameters = $('#form1').serialize(); 
    //alert(parameters); 
    $.ajax({ 
     url: 'ajax_call.php', 
     data: parameters, 
     type: 'POST', 
     success: function(data){ 
      if(data.indexOf('mailto') > -1){ 
      window.location = data; 
      } 
     } 
    }); 
});