Javascript在打开电子邮件客户端后重新加载父窗口

Javascript在打开电子邮件客户端后重新加载父窗口,javascript,windows,parent,reload,Javascript,Windows,Parent,Reload,我有一个带有以下按钮的表单: <input name="send_message" type="submit" value="SEND A MESSAGE" /> 此按钮将在php脚本下面触发: if(isset($_POST['send_message'])){ $emails = ""; if(!empty($_POST['id'])){ foreach($_POST['id'] as $email){ if($emails == ""){

我有一个带有以下按钮的表单:

<input name="send_message" type="submit" value="SEND A MESSAGE" />

此按钮将在php脚本下面触发:

if(isset($_POST['send_message'])){
$emails = "";

if(!empty($_POST['id'])){
    foreach($_POST['id'] as $email){
        if($emails == ""){
            $tempemail = explode("/",$email);
            $emails = $tempemail[1];
        }else{
            $tempemail = explode("/",$email);
            $emails .= ";" . $tempemail[1];
        }
    }

    if(!empty($emails)){
        echo "<script>window.location = \"mailto:me@abc.com 'recipient'?bcc=".$emails."&subject=Hello%20:%20\"</script>";

    }
if(isset($\u POST['send\u message'])){
$emails=“”;
如果(!空($_POST['id'])){
foreach($_POST['id']作为$email){
如果($emails==“”){
$tempemail=explode(“/”,$email);
$emails=$tempemail[1];
}否则{
$tempemail=explode(“/”,$email);
$email.=“;”$tempemail[1];
}
}
如果(!空($email)){
echo“window.location=\”邮件收件人:me@abc.com“收件人”?密件抄送=“.$emails.”&subject=Hello%20:%20\”;
}
上面的脚本工作正常,但当电子邮件客户端打开时,父窗口为空,除非我手动刷新页面,我希望在电子邮件客户端弹出时重新加载父窗口,是否有人可以提供帮助?谢谢

编辑:

echo "<script>location.href = \"mailto:me@abc.com 'recipient'?bcc=".$emails."&subject=Hello%20:%20\"</script>";
echo "<script>window.location.href = "'.$_SERVER['PHP_SELF'].'"</script>";
解决方案:

echo "<script>location.href = \"mailto:me@abc.com 'recipient'?bcc=".$emails."&subject=Hello%20:%20\"</script>";
echo "<script>window.location.href = "'.$_SERVER['PHP_SELF'].'"</script>";
echo“location.href=\”邮件收件人:me@abc.com“收件人”?密件抄送=“.$emails.”&subject=Hello%20:%20\”;
echo“window.location.href=“”..$\u服务器['PHP\u SELF']”;
感谢Panayot Karabakalov的一些想法。

在所有主流浏览器中都支持使用它,或者如果您愿意,可以尝试使用

好的,我不使用PHP,所以不确定需要将该部分插入何处,但可以肯定的是,Reload()是一个方法/函数,而不是属性,所以可能类似这样:

if(!empty($emails)){
        echo "<script>window.location = \"mailto:me@abc.com 'recipient'?bcc=".$emails."&subject=Hello%20:%20\"</script>";
        echo "<script>window.location.reload();</script>";
    }
if(!empty($email)){
echo“window.location=\”邮件收件人:me@abc.com“收件人”?密件抄送=“.$emails.”&subject=Hello%20:%20\”;
回显“window.location.reload();”;
}
[编辑]
嗯,可能一些PHP内置的重新加载页面的方法会更好,例如。另外,您还有()函数,不需要重新加载页面。

我使用
window.location.reload=“mailto:xxx”
,电子邮件客户端将不会显示。除非我自己重新加载,否则它仍然是相同的空白页。可能是错误的想法
window.location=mailto:…
?如果用户使用在线邮件服务而不是电子邮件客户端,例如,像我一样,
mailto
会将我重定向到gmail。也许有另一种不用c的方式发送电子邮件挂起
window.location
?导致问题的原因是我使用的输入类型为
type='submit'
我将php行
header()
放在
window.location=“mailto:xxx”
之后刷新,页面可以刷新,但电子邮件客户端永远不会打开。。