javascript - 为什么 JQuery AJAX 调用在 IE7 中不起作用? (对于这个具体的例子)

标签 javascript jquery ajax internet-explorer

我确实看到了下面的链接,但不幸的是,似乎没有任何内容适用于我的代码。

此函数在 FF 中有效,但在 IE 中无效,只是将名称值对 (info/"") 发送到服务器。不需要返回任何内容或调用任何其他函数。

有什么建议吗?

function functionAX()
{ 
    $(document).ready(function() {

       $.ajax({
           url: "/cgi-bin/app.exe",
           method: "post",
           async: false,
           data: { info: "" }
       });

    });
}


谢谢。

编辑
看起来这个 ajax 调用有效 - 但仅在第一次调用时有效。

在上下文中:(C 中的 cgi 应用程序,带有 JS 的 html)
我有两个 html 页面。每个页面上都有一个标题,其中包含两个页面的选项卡/链接。当单击其他页面/选项卡时,我调用此函数 functionAX() ,将名称/值对发送到 cgi 可执行文件。根据此输入,cgi 将创建另一个 html 页面的新版本。 (使用 async:false 时,旧页面将锁定,直到新页面加载为止,这对于此应用程序来说很好,只要我在点击该页面的选项卡/链接后获得一个新页面)。

因此,当我返回“第 2 页”并选择“第 1 页”(从第 2 页开始第二次)时,它不再调用该函数或向 cgi 应用程序发送任何内容...

这是浏览器设置的问题吗?为什么它不向 cgi 发送任何内容?






jQuery .ajax method in IE7 & IE6 not working but working fine in Firefox

Why doesn't this simple jQuery ajax work?

jQuery/Ajax call - It Doesn't work on IE7

jQuery ajax .load() not working in IE6/IE7/IE8 - Working in FF/Safari/Chrome

jquery ajax doesn't work in IE

最佳答案

根据 json.org 规范,您的返回无效。名称始终被引用,因此您应该返回 { "info": ""}

这可能不是您的设置的问题,因为您说其中一个可以与 FF/etc 一起使用,但应该修复它以确保正确性,以防您将来需要切换到另一个 JSON 解析器。

根据您的编辑,IE 似乎正在缓存您的 Ajax 请求。要阻止 IE 缓存您的 Ajax 请求,请执行以下操作:

{
'info': '',
'random' : Math.random()
}

关于javascript - 为什么 JQuery AJAX 调用在 IE7 中不起作用? (对于这个具体的例子),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4260458/

相关文章:

javascript - 为什么图像在悬停时不会更改为以前的图像?

javascript - DOM 更改时触发一次事件

php - jQuery .show() 在刷新之前不起作用

javascript - 如何将 javascript/jquery 函数从一个 html 页面传递到另一个

javascript - 如何将文本框值传递给 Controller

javascript - 为ajax动态创建URL参数

javascript - 从ajax响应中提取json数据

javascript - 使用ajax请求在同一页面中显示部分内容

javascript - Angular 2 - ngModel 绑定(bind)在动态添加的 DOM 元素中不起作用

javascript - mongodb-如何从此查询中隐​​藏 _id ?