我正在尝试使用HTML和js做一些事情。我想在span标签中得到这样的文本:
<ul>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
</ul>
js喜欢这样:
<script>
function searchProcessName(){
var textSearch = document.getElementById("namesearch");
//Do some thing
}
</script>
它不起作用
答案 0 :(得分:0)
你的html中有重复的id请注意,对于一个元素,只有一个id应该是你可以使用多个元素的类的方式
使用innerHTML在span
<script>
function searchProcessName(){
var textSearch = document.getElementById("namesearch").innerHTML;
//Do some thing
}
</script>
答案 1 :(得分:0)
首先,id
必须在页面上是唯一的,因此任何元素都不能具有相同的ID(这意味着您的代码无效)。
使用element.innerHTML
来获取文字
答案 2 :(得分:0)
您有多次相同的ID。你不能。 ID是唯一标识符,因此它只能出现一次。
var textSearch = document.getElementsByClassName("name");
for (var i = 0; i < textSearch.length; i++) {
console.log(textSearch[i].innerHTML);
}
&#13;
<ul>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
<li>
<a href="javascript:search()">
<span class="name" id="namesearch">n 1</span>
</a>
</li>
</ul>
&#13;
答案 3 :(得分:0)
你的示例html中有很多错误..
1。)ID不能相同<span class="name" id="namesearch">n 1</span>
2。)你的javascript:search()
调用了不同的函数,但你已声明了名为searchProcessName()
的函数
请通过关于javascript和html的示例和基础知识..
答案 4 :(得分:0)
id应该是唯一的
document.getElementById('ID').innerHTML