使用jquery的$.post返回的data给div的innerHtml赋值出现htmlfile运行时出现未知的错误

ohmybbq 2015-03-09 03:50:09
我在做一个学习积分查询页面中通过gridview查询出学习积分,将鼠标移到每一行时则显示该人员的详细学习情况,调用详细学习情况是根据每一行的唯一学号使用$.post方法去另一个页面查询的,然后再通过data参数将返回的值赋给页面中div的innerHTML属性,返回的data是一个完整的HTML页面。


使用ie10可以完美实现,但放到ie8上就出现如标题所示的错误提示。

data返回的内容如下所示

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body>
<form name="form2" method="post" action="ServerRunCode.aspx" id="form2">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwULLTE1MTQ0ODQ4NDIPZBYCAgEPZBYCAgEPZBYCZg88KwARAgAPFgIeC18hSXRlbUNvdW50AgJkDBQrAAQWCB4ETmFtZQUG57G75Z6LHgpJc1JlYWRPbmx5aB4EVHlwZRkrAh4JRGF0YUZpZWxkBQbnsbvlnosWCB8BBQnmlofku7blkI0fAmgfAxkrAh8EBQnmlofku7blkI0WCB8BBQzmlofku7bnvJblj7cfAmgfAxkrAh8EBQzmlofku7bnvJblj7cWCB8BBQ3lrabml7Yv5YiG6ZKfHwJoHwMZKwEfBAUN5a2m5pe2L+WIhumSn2QYAQUFY3RsMDAPPCsADAEIAgFkL0XwbVNY6x2pgj3jTdZXjevC7Loryspk3Z7QSXFjHlM=" />
</div>

<div>
<table class="GridViewStyle" cellspacing="0" rules="all" border="1" style="border-collapse:collapse;">
<tr class="GridViewHeaderStyle">
<th scope="col">类型</th><th scope="col">文件名</th><th scope="col">文件编号</th><th scope="col">学时/分钟</th>
</tr><tr class="GridViewRowStyle" align="center">
<td> </td><td> </td><td>20151201140235715 </td><td>1</td>
</tr><tr class="GridViewAlternatingRowStyle" align="center">
<td> </td><td> </td><td>201512011411990206 </td><td>1</td>
</tr>
</table>
</div>
</form>
</body>
</html>
...全文
194 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
ohmybbq 2015-03-10
  • 打赏
  • 举报
回复
引用 6 楼 starfd 的回复:
$(diwShow).html(data)呢 看你描述你是后台组织好了html返回前台的
改为$(divShow).html(data)就正常了。。。。谢放! 但不知道是具体是什么原因!能想到的就是jquery与ie8的兼容性问题,ie10以上能识别,但低版本的就不行了! 结贴
  • 打赏
  • 举报
回复
而且你是有form的?那换成下面的样子看看呢,只用form内部的html,可能会造成样式丢失
$(diwShow).html($(data).find('form').html())
ohmybbq 2015-03-10
  • 打赏
  • 举报
回复
是的。。。。关键是在IE10下完全没问题,一用到IE8问题就来了
  • 打赏
  • 举报
回复
$(diwShow).html(data)呢 看你描述你是后台组织好了html返回前台的
ohmybbq 2015-03-10
  • 打赏
  • 举报
回复
返回的data数据完全没问题的!我已经alert()出来看了,放在一个单独的html文档里能完整显示。。。。 我把后台运行的查询页面的form标签去掉则可以运行,但没有返回结果。。。 所以我估计是有form的原因! 那么问题来了,如果后台 查询页面不要form标签,后台查询页面运行不成功,data就也就没有返回数据!加了form标签又要报错,。。。???问题在这了
无涯大者 2015-03-09
  • 打赏
  • 举报
回复
alert()下你的Data数据,看是否有问题???
忠义白马庙 2015-03-09
  • 打赏
  • 举报
回复
应该是你的查询页面中有些标签并不是成对出现的,你可以检查一下页面上所有的HTML标签是否规范
ohmybbq 2015-03-09
  • 打赏
  • 举报
回复
这是在ie8中出现的错误提示。。。 都快被这问题搞疯了。。。。都 搞了一天了,找不出问题!
ohmybbq 2015-03-09
  • 打赏
  • 举报
回复
这是在ie10上运行成功的页面效果

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧