比如有一段代码:
<div id="test"> <span>1</span> <span>2</span> <span>3</span> <span>4</span> </div>
那么,我该如何获取到<span>里的1 2 3 4?
求解!
[code="java"]
var d = document.getElementById("test"); var nodeList = d.getElementsByTagName("span"); for( i = 0;i<nodeList.length;i++){ alert(nodeList[i].innerHTML); }[/code]
var d = document.getElementById("test");
var nodeList = d.getElementsByTagName("span");
alert(nodeList[0].innerText);
通过tagName获取到一个nodeList,然后循环。
可以使用jQuery:
[code="java"]
var spans = $("#test").find("span");
// 获取第二个 span 的值
var secondSpan = spans.eq(1).text(); // or .html();
// 遍历
spans.each(function(){
// $(this) 可以获取到当前 span
var currentSpan = $(this).text(); // or .html();
});
[/code]
可以用childNode[i]获取
$("#test").find("span").each(function(){
alert($(this).text());
});
不适用id标签,获取div下所有span
$("div span").each(function(){
alert($(this).text());
});
[code="java"]
var spanArray = document.getElementById("test").childNodes;
for(var i=0;i<spanArray.length;i++)
{
if(spanArray[i].innerText)
{
alert(spanArray[i].innerText);
}
}
[/code]
$(function(){ $(function(){ $("#test").find("span").each(function(index){ $(this).click(function(){ alert($(this).text()); }) }) }) })通过js来获取
如果是IE,则使用
var spanTest=document.getElementByIdx_x('sizeSpan');
spanValue = spanTest.outerText;
如果是ff,则可以:
var spanTest=document.getElementByIdx_x('sizeSpan');
spanValue = spanTest.textContent;
通过js来获取
如果是IE,则使用
var spanTest=document.getElementByIdx_x('sizeSpan');
spanValue = spanTest.outerText;
如果是ff,则可以:
var spanTest=document.getElementByIdx_x('sizeSpan');
spanValue = spanTest.textContent;
$("#test span").each(function(){
alert($(this).text());
});
javascript:alert(1);
将4个span标签制定相同的name,document.getElementByName("span的name");就能直接得到包含1 2 3 4的数组。ID是唯一的 所以不能用ID
var div=document.getElementById('div');
var nodelist=div.getElementByTagName('span');
nodelist[0].innerHTML取得第一个span的值
使用jquery比较简单
$("#test").children("span").each(function(){
alert($(this).html());
});
用jquery吧,很快捷的
var spans = $('#test > span');
for(var i=0;i<spans.length;i++){
alert($(spans[i]).html());
}
还是用jquery,用原始的js可能会浏览器不通用
$("#test").find("span").each(function() {
alert($(this).html());
});
可以用document.getElementsByTagName("span")得到一个数组之后在循环就得到了吧,不过jquery更快更方便$("#test").find("span").each(function(){alert($(this).html())});
强烈建议使用jquery
$("#test").find("span").each(function(){
alert($(this).text()); //1,2,3,4
})
$("#test").text();
一句就OK了,导入jquery.js 先!
这个简单的问题,大家回答在这么踊跃!
span样式使用大全[url]http://html5.3g-edu.org/web/?wwxit[/url]