Javascript 跨域jQuery弹出帖子

Javascript 跨域jQuery弹出帖子,javascript,jquery,ajax,post,cross-domain,Javascript,Jquery,Ajax,Post,Cross Domain,我正在尝试使用以下jQuery弹出窗口发布一篇跨域文章。IE在jquery.min.js的第19行拒绝了我的许可。请注意,我在www.mysite.com上运行了以下脚本,例如,我正在尝试将数据发布到www.google.com。这样就形成了一个跨领域的帖子。我想这就是IE拒绝给我许可的原因。我知道应该有一个解决方案来创建隐藏的iframe,但我不知道如何在代码中实现它。请举一些例子。提前谢谢 <html> <head> <link rel="stylesheet"

我正在尝试使用以下jQuery弹出窗口发布一篇跨域文章。IE在jquery.min.js的第19行拒绝了我的许可。请注意,我在www.mysite.com上运行了以下脚本,例如,我正在尝试将数据发布到www.google.com。这样就形成了一个跨领域的帖子。我想这就是IE拒绝给我许可的原因。我知道应该有一个解决方案来创建隐藏的iframe,但我不知道如何在代码中实现它。请举一些例子。提前谢谢

<html>
<head>
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/smoothness/jquery-ui.css" type="text/css" />
<style type="text/css">
#register { display: none; }
.ui-dialog { font-size: 10px; }
.ui-dialog .ui-dialog-titlebar-close { visibility: hidden; }
</style>
</head>
<body>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.7.1/jquery-ui.min.js"></script>
<script type="text/javascript">

function loadpopup(){

function Init() 
{
jQuery('#register').dialog({ width: 400, resizable: false, buttons: { "Continue": function() {
        if (jQuery("#email").val().length < 3) 
        {
            alert('Please enter your email address to continue.');
            jQuery("#email").focus();
        }
        else 
        {
            jQuery("#email_2").val(jQuery("#email").val());
            $.post("http://google.com/register.php", $("form[name='registerform']").serialize());
            jQuery('#register').dialog('close')}
    } 
}, closeOnEscape: false, modal: true, show: 'slide' });
}
jQuery(document).ready(Init);
}

loadpopup();

</script>
<div id="register">
<form>
<center>
<table><tbody>
<tr><td align="center" style="text-align: center; font-size: 10px; background: #FFFFFF;">
<br><h3>Register</h3>
  </td></tr>
<tr><td align="left" style="text-align: justify; font-size: 11px; background: #FFFFFF;">
Please enter your email address to continue.</br></br>
  </td></tr>
</tbody></table></center>
<center>
<div>
    <table>
        <tbody>
            <tr><td align="left" style="font-size: 12px; background: #FFFFFF;"><b>Email:</b></td><td align="left" style="background: #FFFFFF; font-size: 11px;"><input type="text" id="email" name="email" maxlength="26"/></td></tr>
        </tbody>
    </table>
</div>
</form>
</center>
</div>
<form name="registerform" action="http://google.com/register.php" method="post">
<input type="hidden" name="email_2" id="email_2" />
</form>
</body>
</html>

#寄存器{显示:无;}
.ui对话框{字体大小:10px;}
.ui对话框.ui对话框标题栏关闭{可见性:隐藏;}
函数loadpopup(){
函数Init()
{
jQuery('#register')。对话框({宽度:400,可调整大小:false,按钮:{“继续”:函数(){
if(jQuery(“#email”).val().length<3)
{
警报('请输入您的电子邮件地址以继续');
jQuery(“#email”).focus();
}
其他的
{
jQuery(“#email_2”).val(jQuery(“#email”).val());
$.post(”http://google.com/register.php,$([name='registerform'])。serialize();
jQuery('#register')。对话框('close')}
} 
},closeOnEscape:false,modal:true,show:'slide'});
}
jQuery(document).ready(Init);
}
loadpopup();

登记册 请输入您的电子邮件地址以继续

电邮:
您正在通过XHR发布到其他域。你不能那样做是因为你的原因

相反,构建表单,然后对其调用
submit()


按照你现在的做法,谷歌正在返回
405不允许的方法
,这可能是由于一些原因而返回的。

我不是在谷歌发帖。接收POST请求的域由我控制。我不能让我的服务器接受它吗?我意识到我将无法获得任何返回数据,但它只需要发布,仅此而已。我知道使用iframe可以绕过同源策略,但我不知道如何去做。这就是为什么我说,我引用“我正试图将数据发布到www.google.com,例如…”我的意思是表明发布必须发生在不同的域中。