Dom 浏览器开发工具中的目标为空错误
我试图将新创建的元素(行和单元格)插入到ID为“dynPop”的行上方的表中(通过javascript)。当我尝试这样做时,我得到以下错误 TypeError:目标为空 这是表格的HTMLDom 浏览器开发工具中的目标为空错误,dom,Dom,我试图将新创建的元素(行和单元格)插入到ID为“dynPop”的行上方的表中(通过javascript)。当我尝试这样做时,我得到以下错误 TypeError:目标为空 这是表格的HTML <table> <tr id="dynPop"> <td style="color:white"> blah blah blah blah blah </td> </tr> </table> 有没有
<table>
<tr id="dynPop">
<td style="color:white">
blah blah blah blah blah
</td>
</tr>
</table>
有没有想过为什么这个javascript代码不起作用
谢谢 如果没有看到HTML的其余部分,我不确定,但我认为主要问题是JavaScript在加载DOM之前执行
您可以尝试将JavaScript放入一个函数中,该函数在body元素的onload
事件中被调用:
<!DOCTYPE html>
<html>
<head>
<title>asdf</title>
<script type="text/javascript">
function doThing() {
$rownumber = 1;
var target = document.getElementById('dynPop');
var $CHAP_IMAGE = "$out[1]; ";
var olr1 = document.createElement('tr');
var old1 = document.createElement('td');
var olt1 = document.createTextNode($CHAP_IMAGE);
old1.appendChild(olt1);
olr1.appendChild(old1);
$rowname = 'row' + $rownumber;
olr1.setAttribute('name',$rowname);
target.insertBefore(target, olr1);
$rownumber++;
}
</script>
</head>
<body onload="doThing()">
<table>
<tr id="dynPop">
<td style="color:white">
blah blah blah blah blah
</td>
</tr>
</table>
</body>
</html>
asdf
函数doThing(){
$rownumber=1;
var target=document.getElementById('dynPop');
var$CHAP_IMAGE=“$out[1];”;
var olr1=document.createElement('tr');
var old1=document.createElement('td');
var olt1=document.createTextNode($CHAP\u IMAGE);
old1.附加子对象(olt1);
olr1.儿童(old1);
$rowname='row'+$rownumber;
olr1.setAttribute('name',$rowname);
target.insertBefore(target,olr1);
$rownumber++;
}
废话废话废话
<!DOCTYPE html>
<html>
<head>
<title>asdf</title>
<script type="text/javascript">
function doThing() {
$rownumber = 1;
var target = document.getElementById('dynPop');
var $CHAP_IMAGE = "$out[1]; ";
var olr1 = document.createElement('tr');
var old1 = document.createElement('td');
var olt1 = document.createTextNode($CHAP_IMAGE);
old1.appendChild(olt1);
olr1.appendChild(old1);
$rowname = 'row' + $rownumber;
olr1.setAttribute('name',$rowname);
target.insertBefore(target, olr1);
$rownumber++;
}
</script>
</head>
<body onload="doThing()">
<table>
<tr id="dynPop">
<td style="color:white">
blah blah blah blah blah
</td>
</tr>
</table>
</body>
</html>