Php $.ajax POST在IE8上打开一个新窗口

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

在通过ajax帖子提交客户信息时,我从IE8(仅IE8)得到了这种奇怪的响应

正确执行操作,在CRM上创建客户并执行所有后续操作,但窗口也会重新打开,即弹出一个带有顶部URL的新窗口

我不知道为什么会这样。我删除了代码,只包含了post调用,但没有成功

工作代码如下,出于安全原因,我刚取了公司ID

有什么想法吗

  • 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