这适用于Firefox和Chrome,但在IE中失败。它确实在警报中显示结果,但该页面在IE中只是空白。我没有遇到任何类型的Firebug错误,所以我无法确定问题所在。任何人都可以发现我的任何明显的错误......或者知道解决方法吗?
感谢。
$("#compareit").submit(function(e){
$("#topsection").hide();
$("#tabs").hide();
$("#bottomWrap").hide();
$("#error").html('');
$("#leftcolumn").hide();
$("#rightcolumn").hide();
e.preventDefault();
var queryString = $('#compareit').serialize();
var dataString = queryString + "&count=" + totalselected;
$.ajax({
type: 'GET',
url:'newmlbcompare2.php',
cache: false,
data: dataString,
success:function(result){
$('#ajaxDiv').html(result);
// This alerts the HTML block that is being returned (in all browsers)
//alert(result);
}
});
return false;
});
根据要求添加HTML。我已经截断了一些以节省空间:
<div id="maincontainer">
<div id="topsection"><div id="topImage"></div></div>
<div id="contentwrapper">
<div id="contentcolumn">
<div class="innertube">
<div id="compareWrapper">
<form name="compareit" id="compareit" action="">
<input type="hidden" value="2011" name="year" id="year" />
<div id="tabs">
<ul>
<li><a href="#tabs0">C</a></li>
<li><a href="#tabs1">1B</a></li>
</ul>
<div id="tabs0">
<select multiple id="C" name="playArray[]" class="tabStyle" size="10">
</select>
</div>
<div id="tabs1">
<select multiple id="FB" name="playArray[]" class="tabStyle" size="10">
</select>
</div>
</div>
<div id="bottomWrap">
<div id="instructions"><b>Players:</b> Select up to four players.</div>
<div id="added_players" align="center" class="added_players"></div>
<div id="error" class="err"></div>
</div>
</div>
<div id='start'></div>
</form>
<div id="ajaxDiv"></div>
</div>
</div>
<div id="leftcolumn">
<div class="innertube">
<div id="accordionLeft">
</div>
</div>
</div>
<div id="rightcolumn">
<div class="innertube">
<div id="accordionRight">
</div>
</div>
</div>
答案 0 :(得分:1)
尝试将$('#ajaxDiv').html(result);
更改为$('#ajaxDiv').append(result);
。
显然,IE可能会遇到.html()jQuery API
的问题答案 1 :(得分:0)
可能性...?改变这个:
<div id="compareWrapper">
<form name="compareit" id="compareit" action="">
到此:
<form name="compareit" id="compareit" action="">
<div id="compareWrapper">
答案 2 :(得分:0)
$.ajax({
type: 'GET',
url:'newmlbcompare2.php',
cache: false,
data: dataString,
dataType: "html", //try adding this
success:function(result){
$('#ajaxDiv').html(result);
// This alerts the HTML block that is being returned (in all browsers)
//alert(result);
}
});
答案 3 :(得分:0)
正如@GeoffWarren所说,我的表结构中有一个错误被返回。一旦我修复它在IE中工作。
感谢所有花时间看的人。
凯尔