js在IE下报 object error

jiuchang 2012-05-02 11:54:00
使用ajaxfileupload实现上传图片的功能,firefox下功能正常。在ie下报object error
出错的代码如下:
	function ajaxFileUpload()
{
$("#loading")
.ajaxStart(function(){
$(this).show();
})
.ajaxComplete(function(){
$(this).hide();
});
$.ajaxFileUpload
(
{
url:'upload.php?do=upload',
secureuri:false,
fileElementId:'fileToUpload',
dataType: 'json',
data:{name:'logan', id:'id'},
success: function (data, status)
{
if(typeof(data.error) != 'undefined')
{
if(data.error != '')
{
alert(data.error+'abc');
}else
{
document.getElementById('photo').value=data.msg;
var node1 = document.getElementById('imgnode1');
var text =
"<br><img src='"+data.msg
+"' width='130' height='160' >"
+"<form name='imgdel' id='imgdel' action='upload.php?do=delete' method='post'>"
+"<input type='hidden' name='file' value='"+data.msg
+"'><input type='button' onclick='return ajaxFileDelete();' value='删除'></form>";
var node2 = document.getElementById('imgnode2');
node2.innerHTML = text;
}
}
},
error: function (data, status, e)
{
alert(e);
}
}
)

return false;
}


通过加alert,已经定位到是node2.innerHTML = text;出错。请大家帮忙看下是什么问题。

网页中相关的代码如下:
			<tr><th align="right">照片</th><td></td>
<td><input name="photo" id="photo" value="" type="hidden" />
<div id="imgnode1">
<input type="file" size=28 name="file" id="fileToUpload" class="input" />
<br />
<input type="button" id="buttonUpload" onclick="return ajaxFileUpload();" value="上传" />
</div>
<div id="imgnode2"> </div>
</td></tr>
...全文
775 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiuchang 2012-05-05
  • 打赏
  • 举报
回复
搞定了,应该是节点中有form引起的问题,把form删除就正常了
jiuchang 2012-05-04
  • 打赏
  • 举报
回复
node2获取到了,alert的结果是一个object

这段代码只在IE下有问题,在firefox下能正常工作,实现两个节点的替换显示
hellNo 2012-05-04
  • 打赏
  • 举报
回复
你看你ID为imgnode2这个div获取到了吗?打个断点看看node2是不是null
jiuchang 2012-05-04
  • 打赏
  • 举报
回复
顶,求高手指点

87,996

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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