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

使用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中。

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

(所有vars都可以,在FF和chrome中完美运行)

谢谢。


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

我试过了

$ .ajax({url:’movies.php’,data:“do = UpdateMovies&_a = SetStatus”,success:function(data){alert(’something’);

  }}); 

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

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

它只是没有被执行任何帮助将被批准

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"]); 

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

使用Internet Explorer开发人员工具