Php $.ajax POST在IE8上打开一个新窗口
在通过ajax帖子提交客户信息时,我从IE8(仅IE8)得到了这种奇怪的响应 正确执行操作,在CRM上创建客户并执行所有后续操作,但窗口也会重新打开,即弹出一个带有顶部URL的新窗口 我不知道为什么会这样。我删除了代码,只包含了post调用,但没有成功 工作代码如下,出于安全原因,我刚取了公司ID 有什么想法吗Php $.ajax POST在IE8上打开一个新窗口,php,javascript,ajax,post,internet-explorer-8,Php,Javascript,Ajax,Post,Internet Explorer 8,在通过ajax帖子提交客户信息时,我从IE8(仅IE8)得到了这种奇怪的响应 正确执行操作,在CRM上创建客户并执行所有后续操作,但窗口也会重新打开,即弹出一个带有顶部URL的新窗口 我不知道为什么会这样。我删除了代码,只包含了post调用,但没有成功 工作代码如下,出于安全原因,我刚取了公司ID 有什么想法吗 Javascript $(document).ready(function () { $('button').click(function () { postN
- Javascript
$(document).ready(function () { $('button').click(function () { postNsData(); }); }); function postNsData() { var nsurl = 'https://forms.netsuite.com/app/site/crm/externalleadpage.nl'; var datamin = { compid: xxxxxx, //Company ID -- it's a number. formid: 503, h: '1e705f3aa4570f197aef', leadsource: 8020, subsidiary: 2, email: 'email@gmail.com', firstname: 'John', lastname: 'Doe', phone: '1800902011', }; $.ajax({ type: 'POST', url: 'repost.php', data: 'url=' + nsurl + '&' + data, success: function (text, textStatus, jqXHR) { if (textStatus == 'success') {} } }); }
- PHP代码——repost.PHP
<? php //set POST variables $url = $_POST['url']; unset($_POST['url']); $fields_string = ""; //url-ify the data for the POST foreach($_POST as $key = > $value) { $fields_string. = $key.'='.$value.'&'; } $fields_string = rtrim($fields_string, '&'); //open connection $ch = curl_init(); //set the url, number of POST vars, POST data curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, count($_POST)); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string); //execute post $result = curl_exec($ch); //close connection curl_close($ch); ?>
- 我认为您应该更新javascript,使其看起来像这样
$(document).ready(function () {
$('button').click(function (event) {
event.preventDefault();
postNsData();
});
});
可能发生的情况是IE正确地假设您想要执行链接和javascript。不知道他们为什么制作IE…:p