js报错:未知的运行时错误

时间:2022-11-17 11:11:23
我前台js是这样的

function callBack(fileName) {
     var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
     list.innerHTML = list.innerHTML + fileName;
}


到 list.innerHTML = list.innerHTML + fileName;这句报这个错

19 个解决方案

#1


 list.innerHTML内容可能是标签    fileName的内容是什么

#2


引用 1 楼 ly89924 的回复:
 list.innerHTML内容可能是标签    fileName的内容是什么


哦,忘了说了。。
是标签,如下
<tr>
<td><img id="img" name="Sunset.jpg" src="temp/b284e18d-f1c4-4565-a2b8-3883bfd34e42.jpg" style="width:150px;height:100px"/></td>
<td align="center">Sunset.jpg</td>
<td align="center"><a href="#" onclick="delRow(this)">移除</a></td>
</tr>

#3



function callBack(fileName) {
     var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
     alert(list);
     alert(fileName);
     //list.innerHTML = list.innerHTML + fileName;
}


或者IE8,工具,开发人员工具-脚本,启动调试

#4


list.innerHTML = list.innerHTML + fileName;
改下:
var oldList=list.innerHTML;
list.innerHTML=oldList+fileName;

#5




分别alert一下是最简单的调式。。看哪里出的问题。。

#6


引用 5 楼 porschev 的回复:
分别alert一下是最简单的调式。。看哪里出的问题。。


alert出来fileName是2楼得东西
list.innerHTML是空

#7


引用 4 楼 zx75991 的回复:
list.innerHTML = list.innerHTML + fileName;
改下:
var oldList=list.innerHTML;
list.innerHTML=oldList+fileName;


也不行

#8


debugger  加个断点 把IE 工具 选项 高级 里面的“禁止脚本调试”勾去掉,调试下 就明白了

#9


引用 8 楼 superaugus 的回复:
debugger  加个断点 把IE 工具 选项 高级 里面的“禁止脚本调试”勾去掉,调试下 就明白了


还是不懂
加了断点,跟alert出来的一样啊
还是报错

#10


你你alert出来的是什么东东啊?

#11


引用 10 楼 superaugus 的回复:
你你alert出来的是什么东东啊?


我说了呀 一个是一堆标签 就是2楼得
一个是空值
是空值不能加?可火狐行的

#12


加235539090 QQ说 

#13


引用 12 楼 superaugus 的回复:
加235539090 QQ说


你写错了吧,没有这个账号。。。

#14


你试试 看你var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
 list对象是不是空的,就是说你的ctl00_ContentPlaceHolder1_idPicList不对,如果是对的 那么就是你的html连接的时候需要转义字符之类的,比如:
var fileName ="<tr><td><img id=\"img\" name=\"Sunset.jpg\" src=\"temp/b284e18d-f1c4-4565-a2b8-3883bfd34e42.jpg\" style=\"width:150px;height:100px\"/></td><td align=\"center\">Sunset.jpg</td><td align=\"center\"><a href=\"#\" onclick=\"delRow(this)\">移除</a></td></tr>";

#15


引用 14 楼 superaugus 的回复:
你试试 看你var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
 list对象是不是空的,就是说你的ctl00_ContentPlaceHolder1_idPicList不对,如果是对的 那么就是你的html连接的时候需要转义字符之类的,比如:HTML code
var fileName ="<……


还是错的
var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
我这个上面还用到的

#16


function callBack(fileName) { 
var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList"); 
if(list&&list.innerHTML)
list.innerHTML +=fileName; 
else
alert("idPicList - ID错误");

#17


引用 16 楼 xs8577 的回复:
function callBack(fileName) { 
var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList"); 
if(list&amp;&amp;list.innerHTML)
list.innerHTML +=fileName; 
else
alert("idPicList - ID……


是id错误
但是我这样
<tbody id="idPicList" runat="server">5
</tbody>
然后alert(list.innerHTML)是5 也报错

#18


可是我还是不知道怎么改

#19


list.innerHTML = list.innerHTML + fileName

改成 list.innerHTML=list.value+fileName
或者list.innerHTML+=fileName

#1


 list.innerHTML内容可能是标签    fileName的内容是什么

#2


引用 1 楼 ly89924 的回复:
 list.innerHTML内容可能是标签    fileName的内容是什么


哦,忘了说了。。
是标签,如下
<tr>
<td><img id="img" name="Sunset.jpg" src="temp/b284e18d-f1c4-4565-a2b8-3883bfd34e42.jpg" style="width:150px;height:100px"/></td>
<td align="center">Sunset.jpg</td>
<td align="center"><a href="#" onclick="delRow(this)">移除</a></td>
</tr>

#3



function callBack(fileName) {
     var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
     alert(list);
     alert(fileName);
     //list.innerHTML = list.innerHTML + fileName;
}


或者IE8,工具,开发人员工具-脚本,启动调试

#4


list.innerHTML = list.innerHTML + fileName;
改下:
var oldList=list.innerHTML;
list.innerHTML=oldList+fileName;

#5




分别alert一下是最简单的调式。。看哪里出的问题。。

#6


引用 5 楼 porschev 的回复:
分别alert一下是最简单的调式。。看哪里出的问题。。


alert出来fileName是2楼得东西
list.innerHTML是空

#7


引用 4 楼 zx75991 的回复:
list.innerHTML = list.innerHTML + fileName;
改下:
var oldList=list.innerHTML;
list.innerHTML=oldList+fileName;


也不行

#8


debugger  加个断点 把IE 工具 选项 高级 里面的“禁止脚本调试”勾去掉,调试下 就明白了

#9


引用 8 楼 superaugus 的回复:
debugger  加个断点 把IE 工具 选项 高级 里面的“禁止脚本调试”勾去掉,调试下 就明白了


还是不懂
加了断点,跟alert出来的一样啊
还是报错

#10


你你alert出来的是什么东东啊?

#11


引用 10 楼 superaugus 的回复:
你你alert出来的是什么东东啊?


我说了呀 一个是一堆标签 就是2楼得
一个是空值
是空值不能加?可火狐行的

#12


加235539090 QQ说 

#13


引用 12 楼 superaugus 的回复:
加235539090 QQ说


你写错了吧,没有这个账号。。。

#14


你试试 看你var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
 list对象是不是空的,就是说你的ctl00_ContentPlaceHolder1_idPicList不对,如果是对的 那么就是你的html连接的时候需要转义字符之类的,比如:
var fileName ="<tr><td><img id=\"img\" name=\"Sunset.jpg\" src=\"temp/b284e18d-f1c4-4565-a2b8-3883bfd34e42.jpg\" style=\"width:150px;height:100px\"/></td><td align=\"center\">Sunset.jpg</td><td align=\"center\"><a href=\"#\" onclick=\"delRow(this)\">移除</a></td></tr>";

#15


引用 14 楼 superaugus 的回复:
你试试 看你var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
 list对象是不是空的,就是说你的ctl00_ContentPlaceHolder1_idPicList不对,如果是对的 那么就是你的html连接的时候需要转义字符之类的,比如:HTML code
var fileName ="<……


还是错的
var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList");
我这个上面还用到的

#16


function callBack(fileName) { 
var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList"); 
if(list&&list.innerHTML)
list.innerHTML +=fileName; 
else
alert("idPicList - ID错误");

#17


引用 16 楼 xs8577 的回复:
function callBack(fileName) { 
var list = document.getElementById("ctl00_ContentPlaceHolder1_idPicList"); 
if(list&amp;&amp;list.innerHTML)
list.innerHTML +=fileName; 
else
alert("idPicList - ID……


是id错误
但是我这样
<tbody id="idPicList" runat="server">5
</tbody>
然后alert(list.innerHTML)是5 也报错

#18


可是我还是不知道怎么改

#19


list.innerHTML = list.innerHTML + fileName

改成 list.innerHTML=list.value+fileName
或者list.innerHTML+=fileName

#20