我在IE中遇到Jquery问题,代码无效,任何人都可以帮助我。
http://efm.net.au/component/content/article/54
请在IE和FF(或者歌剧,safari,chrome)中选中并选择状态,你会看到俱乐部已经加载但是没有出现在IE中,但是它们出现在FF中。
请帮忙吧。 感谢
function loadClub() { var st = document.getElementById("State").value; if(st != "Select State") { jQuery("#loaderBox").css("display","block"); //alert(document.getElementById("Club").innerHTML); //alert($("#State").val()); /*$("div#Club_container").remove();*/ setTimeout('jQuery(".club-drop input").remove();',100); setTimeout('jQuery("#Club_container").remove();',100); if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) {/* $(".state-drop input#State_input").remove(); $("div#State_container").remove(); $(".club-drop input#Club_input").remove(); $("div#Club_container").remove();*/ //setTimeout('$(".state-drop").remove()',500); if(jQuery("#club1").length > 0) { document.getElementById("club1").innerHTML=xmlhttp.responseText; document.getElementById("club2").innerHTML=xmlhttp.responseText; document.getElementById("club3").innerHTML=xmlhttp.responseText; }else{ document.getElementById("Club").innerHTML=xmlhttp.responseText; } //jQuery("div.state-drop").css("border","none"); jQuery("div.state-drop span").css("display","none"); jQuery('.efm-text input[type="submit"]').removeAttr('disabled'); if(jQuery("#club1").length > 0) { setTimeout("jQuery('#club1').selectbox()",100); setTimeout("jQuery('#club2').selectbox()",100); setTimeout("jQuery('#club3').selectbox()",100); }else{ setTimeout("jQuery('#Club').selectbox()",100); //jQuery('#Club').selectbox(); } jQuery("#loaderBox").css("display","none"); } } xmlhttp.open("GET","/club/state-club.php?state="+st,true); xmlhttp.send(); }else{ setTimeout('jQuery(".club-drop input").remove();',100); //jQuery("div.state-drop").css("border","1px solid red"); jQuery("div.state-drop span").css("display","block"); jQuery("div.state-drop span").css("color","red"); jQuery('.efm-text input[type=submit]').attr('disabled', 'disabled'); if(jQuery("#club1").length > 0) { document.getElementById("club1").innerHTML="Select State First"; document.getElementById("club2").innerHTML="Select State First"; document.getElementById("club3").innerHTML="Select State First"; setTimeout("jQuery('#club1').selectbox()",100); setTimeout("jQuery('#club2').selectbox()",100); setTimeout("jQuery('#club3').selectbox()",100); }else{ document.getElementById("Club").innerHTML="Select State First"; setTimeout("jQuery('#Club').selectbox()",100); } } }
答案 0 :(得分:1)
1 - 升级到最新版本的jQuery。我从来没有遇到过jquery的任何跨浏览器问题。
2 - 用jQuery代码替换你的ajax代码。
E.g -
$.post("/someapp/login.do",$("#loginForm").serialize(), function(data) {
// Callback code
$('#loginDiv').html(data);
});