IE的奇怪ajax问题

时间:2016-05-15 19:17:20

标签: javascript ajax internet-explorer alert

我遇到了一个我无法找到解释的IE问题。我有这个代码在Chrome和Firefox中发出警报,但它不在IE中。我甚至不打电话给GetDictBySubtitle()

<?php
header('Content-type: text/html; charset=UTF-8');
?>

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="">
    <meta name="author" content="">

    <title>Something</title>

    <link rel="stylesheet" href="../css/bootstrap.css" type="text/css">
    <link href="../css/dashboard.css" rel="stylesheet"/>

    <script>

    function GetDictBySubtitle() {

        var userid = "000000000027";
        var subid = "6317450";
        postData = {"userid":userid, "subtitleid":subid};               
            $.ajax({
                url: "/cgi-bin/get_movie_dictionary.py",
                type: "post",
                datatype:"json",
                async : true,
                data: {postData},
                success: function(response){
                    alert(response);
                } 
            });

    }

     function GetAccountData() {

        var userid = "000000000027";
        alert(userid);

    }

</script>

</head>
<body>

<script>
    window.onload = function() {
        GetAccountData();
    }
</script>

AN ALERT SHOULD BE DISPLAYED

</body>

    <script src="../js/jquery.js"></script>
    <script src="../js/jquery-ui.min.js"></script>
    <script src="../js/bootstrap.min.js"></script>
    <script src="../js/light-bootstrap-dashboard.js"></script>


</html>

我还在请求中添加了cache: false,但它不是缓存问题,因为我从IE中删除了所有内容,重新启动了它,并且警报仍然潜伏在黑暗的某个地方。

注意:在IE中调试页面时,我在window.onload块中出现GetAccountData() is undefined错误。

我使用的是IE 10,Chrome 50,Firefox 45。

如果我有时间杀人,我总能指望微软。

1 个答案:

答案 0 :(得分:1)

更改

data: {postData},

data: postData,

再次测试。

为什么?

因为postDataobject

{postData}不正确。在这种情况下,Internet Explorer检测到错误并阻止执行。