[英]IE11 and <a href> with div or img in Javascript/dojo
[英]JavaScript/IE11 - Clearing DIV Contents
我在IE方面遇到了一些問題(非常驚喜),並清除了DIV內容。 我有一個“搜索結果” DIV,其中顯示了一些通過GET方法(AJAX)收集的項目。 該方法本身可以正常工作,並將數據返回給AJAX調用,但是當document.getElementById('stupid-div').innerHTML = '';
時,有問題的DIV拒絕清空自身document.getElementById('stupid-div').innerHTML = '';
調用后,DIV中將顯示與AJAX調用之前相同的數據。 在其他瀏覽器中執行相同的功能將按預期工作,並且一旦采取措施,DIV就會清除結果。 知道如何使這項工作有效嗎? 我也嘗試$('#stupid-div').empty()
無濟於事。
這是代碼片段。
<div class="Search-Area" id="Request-List"></div>
document.getElementById('Edit-Area').style.height = '0';
$.ajax({
url: '/SomeController/GetSomeData',
dataType: 'json',
type: 'GET',
timeout: 30000,
data: {},
success: function(data) {
if (!data.Success) {
alert(data.ExitMessage);
return;
}
$('#Request-List').empty(); // Does not work in IE
document.getElementById('Request-List').innerHTML = ''; // Does not work in IE either
alert('refreshed'); // Displays each time, so it's hitting the clear div methods
for (var i = 0; i < data.Data.length; i++) {
document.getElementById('Request-List').innerHTML += '<div onclick="LoadRequest(this.id)" class="Search-Result" id="R' + data.Data[i].RequestID + '"/><label> Request for ' + data.Data[i].Name + ' by ' + data.Data[i].User + '</label></div>';
}
}
});
您是否嘗試過$('#Request-List')。html('')
我發現了問題,這是與IE和AJAX有關。 IE緩存的“ GET”請求,因此它在第一次運行后不會遇到相同的“ LoadRequests”方法,因為它認為它已經具有數據了。 將其切換為“ POST”可解決此問題,並按預期清除了DIV。
如果POST方法不適合您,請參閱此有用的文章以進一步解決:)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.