IE 6-7-8的jQuery UI对话框+ Ajax失败

时间:2010-02-28 14:18:44

标签: jquery ajax jquery-ui jquery-ui-dialog

使用ajax时,我遇到了jQuery-ui Dialog的问题

$.ajax({ 
                        url: "folders.php", 
                        cache: false,
                        data: {
                                'do' : 'Ajax'
                                ,'_a' : 'ChangeMoviesFolder'
                                ,'MovieIDS' : MovieIDS
                                ,'toFolderID' : toFolderID
                                ,'fromFolderID' : fromFolderID
                        },
                        context: document.body, 
                        open: function(event, ui) {

                            alert('open');
                        },
                        error : function(XMLHttpRequest, textStatus, errorThrown){
                             // Handle the beforeSend event
//                          alert("responseText: "+errorThrown.message);

                           },

                        success: function(data){
                            $('input.checkMovie').attr('checked',0);
                                $("#resultsTable").find('tr.selectable-row').removeClass('active');


                            if (data == '1')
                            {

                                window.location = WWW_ROOT+'movies.php?do=List&FolderID='+toFolderID;
                            }
                             $dialog.dialog("close"); 
                      }});

使用IE时,ajax永远不会获得成功选项 我错了

“在调用open方法之前无法调用此方法”

它只发生在IE中。

是否有人可能知道问题可能是什么?

(所有变量都可以,并且在FF& chrome中完美运行)

感谢。


经过多次检查ajax与IE完全不兼容

我试过

  

$。AJAX({                 url:'movies.php',数据:“do = UpdateMovies& _a = SetStatus”,         成功:函数(数据){             警报( '某物');

  }});

在一个函数中,没有变量,我已经尝试过就像在

中一样

http://api.jquery.com/jQuery.ajax/

并且它不会被执行任何帮助将被批准

2 个答案:

答案 0 :(得分:7)

jQuery 1.4和Sarissa之间存在冲突。

页面上是否包含sarissa.js?

类似的报道:

https://jira.jboss.org/jira/browse/RF-8282

http://code.google.com/p/google-web-toolkit/issues/detail?id=3608

http://code.google.com/p/jstree/issues/detail?id=430

对Sarissa的这种改变似乎有效。

// _SARISSA_XMLHTTP_PROGID = Sarissa.pickRecentProgID(["Msxml2.XMLHTTP.6.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"]);
 _SARISSA_XMLHTTP_PROGID = Sarissa.pickRecentProgID(["MSXML2.XMLHTTP", "Microsoft.XMLHTTP"]); 

答案 1 :(得分:0)

您是否尝试使用IE中的开发人员工具来逐步执行代码并查看执行的内容以及变量值是什么?通过点击F12,IE 8拥有一套很好的工具。

Working with the Internet Explorer Developer Tools