【发布时间】:2011-07-30 10:03:18
【问题描述】:
我在我的 ASP.NET MVC 3 应用程序中使用 $.get() 以异步方式从数据库获取响应。我得到正确返回的响应,并根据响应在字符串变量中生成我的 HTML,最后将其附加到我的标记页面上已经存在的 div 中。在调试模式下,它会显示创建的完整 HTML,但不会在浏览器中呈现。
这是我的示例代码
$.get("/Modules/FetchModuleActionsByModuleID", { ModuleID: ModuleID }, function (response)
{
if (response.replace(/"/g, '') != '{d:[]}' && response.replace(/"/g, '') != '{d:null}' && response.replace(/"/g, '') != '' && response != '')
{
var actions = eval('(' + response + ')');
var moduleHtml="";
if (actions.length > 0)
{
for (i = 0; i < actions.length; i++)
{
moduleHtml += "<div class='moduleFieldSetting'>";
moduleHtml += "<span class='pdRL10x2 fl'><input type='checkbox' name='" + ModuleName + "_Actions' value='" + actions[i].ActionID + "' /></span>";
moduleHtml += "<span>" + actions[i].ActionName + "</span>";
moduleHtml += "<div class='clear'></div>";
moduleHtml += "</div>";
}
moduleHtml += "<div class='fr mt15'>";
moduleHtml += "<span class='fr'><input type='button' class='inpuButtonAdd' value='Save' /> ";
moduleHtml += "<input type='button' class='inpuButtonAdd' value='Cancel' /> ";
moduleHtml += "</span>"
moduleHtml += "</div>";
moduleHtml += "</div>";
moduleHtml += "<div class='clear'></div>";
moduleHtml += "</div>";
moduleHtml += "</div>";
moduleHtml += "<div class='clear'></div>";
$("#divModuleDetails").append(moduleHtml); //appending to div
}
}
});
这可能是什么原因造成的?
【问题讨论】:
-
这个问题只存在于 IE 中。在 FireFox 中工作
-
你用的是什么IE版本?
-
您是否尝试过缩减
moduleHTML直到问题消失?至少,这会让你对问题有所了解。