innerHTML添加一个ID="abc"的input然后想用jquery$("#abc")获取并赋值获取不到,也无法赋值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了innerHTML添加一个ID="abc"的input然后想用jquery$("#abc")获取并赋值获取不到,也无法赋值相关的知识,希望对你有一定的参考价值。
参考技术A 获取input标签中的值,也就是value,可以通过$("#abc").val();给该input赋值,则是$("#abc").val(“赋值”);innerhtml是给标签体中插入html文本,如,插入内容“123”,最后获得的结果为123;javascript,innerHTML或者innerText获取的内容是否字符串?为啥和另外一个字符串相比结果不对
var tdd = document.getElementById(tdId);
if(tdd.innerHTML=="男") alert("de");
tdId是一个表格单元格的id(就是td对应的),单元格里的内容明明就是男,为什么不出现alert的结果呢?
if(tdd.childNodes[0].nodeValue==“男")的结果也不出来alert,后来我用 if(tdd.childNodes[0].nodeValue==x.childNodes[0].nodeValue)也不可以,其中x=xmlDoc.getElementsByTagName("content")[0];就是xml文件中第一个content对应的内容是男,这样也还是不出来alert函数,为什么呢,求高手指点,急急急!!!!!!!
如果tdId是单元格的ID而不是一个变量的话,那应该写成字符串形式的,即:getElementById("tdId")
测试代码:
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td id="tdId">男</td>
</tr>
</table>
<script type="text/javascript">
var tdd = document.getElementById("tdId");
if(tdd.innerHTML == "男") alert("de");
</script>
其实,这个应该能看到错误提示的(如图)
参考技术A alert(tdd.innerHTML) 看看,说不定单元里还有标签包着文字,或者还有空格单元格属于元素节点,nodeValue 属性对于文档节点和元素节点是不可用的,返回null,
包着文字的节点应该是文本节点,
tdd.childNodes[0].childNodes ==1
tdd.childNodes[0].childNodes[0].nodeType==3 说明单元格里面只有一个文本节点,tdd.innerHTML=="男" 才可能会返回true ,当然要排除空格问题
另外,在firefox下,空的文本节点也算一个节点,如果文字包含在别的标签内,说不定还有空文本节点,tdd.childNodes[0].childNodes 就大于1了本回答被提问者采纳 参考技术B 漏了双引号,获取不到对象!var tdd = document.getElementById(”tdId“) 参考技术C 你先写一个简单的jsp文件,测试一下直接用alert能行不
以上是关于innerHTML添加一个ID="abc"的input然后想用jquery$("#abc")获取并赋值获取不到,也无法赋值的主要内容,如果未能解决你的问题,请参考以下文章
使用 document.getElementById("id").innerHTML 时如何更改文本颜色
jquery中span怎么使用innerhtml赋值?<span id="aa"></span>