【问题标题】:JQuery Post request failing in IE 7JQuery Post 请求在 IE 7 中失败
【发布时间】:2013-08-04 06:33:02
【问题描述】:

我正在使用 JQuery 1.4.4 发布标准帖子,而不是跨域。

             $.post("http://localhost:8085/ComponentPreferences:ignoreContent?_="+new Date().getTime(), {mydata:bla}, function(xml) {
                          //do something
             });

这突然停止在 IE7 上运行(适用于所有其他浏览器),请求根本不会发送(通过 Fiddler 验证)。它曾经在 IE7 上运行良好(据我所知,没有任何改变 :-))

我已经通过 ajax 调用调试了 JQuery post 方法,并且可以看到它已经打开了套接字(~ jQuery 1.4.4 上的第 5912 行)

xhr.open(type, s.url, s.async);

传入的 URL 看起来不错,类型是 POST,async 是 true。

但这永远不会返回。没有错误报告。我至少有 IE7 上的所有安全设置。

任何线索如何进一步调试或问题可能是什么?

【问题讨论】:

  • 著名的遗言:“据我所知,一切都没有改变”:D

标签: javascript jquery post


【解决方案1】:

试试这个确保服务器收到请求

$.ajax({
        type: 'POST',
        url: url_,
        data: urlParams_,
        dataType: 'text',
        async: false,
        success: function(result_) {
            if (result_.length > 0 ){
                try{
                    result_ = $.parseJSON(result_);
                    result = result_;
                }catch (e){
                    alert(e);
                }
            }
        }
    });

【讨论】:

  • 从未提出请求。在 xhr.open(type, s.url, s.async) 上失败;通过调试jQuery代码确认。
  • 你在使用 servlet/jsp/java(框架)做什么?并尝试将 URL 替换为 url_ 并提醒 result
  • 我不确定后端与它有什么关系,没有发出请求。我已经通过使用 wireshark/fiddler/调试 jQuery 代码确认了这一点。
【解决方案2】:

添加

$.support.cors = true; $.mobile.allowCrossDomainPages = true;

用于向服务器提交ajax请求

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-23
    • 2011-09-07
    • 2013-02-08
    • 2013-03-21
    • 1970-01-01
    • 2015-08-07
    • 2010-10-10
    • 1970-01-01
    相关资源
    最近更新 更多