在javascript中获取Hidden <SPAN>的文本

问题描述

| 我有4个
<SPAN>
,其中3个在动态gridview中是隐藏的(
display:none
<tr>
   <SPAN id=\"Span1\">Name</SPAN>
   <SPAN id=\"Span2\" style=\"display:none\"></SPAN>
   Id1<SPAN id=\"Span3\" style=\"display:none\">Id2</SPAN>
   <SPAN id=\"Span3\" style=\"display:none\">Id3</SPAN>
</td>
我怎么能得到那些文本?我在警报中收到的元素为
[object HtmlSpanElement]
。我曾用
innerHtml
和written5ѭ写过它,但结果是
undefined
。     

解决方法

        根据海报的要求,并感谢V4Vendetta 获取无文本内容的代码是:
var content = span.innerText || span.textContent;
之所以可以这样,是因为(通常)不支持ѭ5those的浏览器确实支持
textContent
。 quirksmode有更多细节。     ,        使用JQuery,将获得以下值:
$(function() {
   $(\'tr span\').each(function() {
     alert($(this).text());
   });
});
这是一个例子     ,        采用:
var str = document.getElementById(\'span1\').value;
    ,        某些浏览器(Firefox)不支持
innerText
,在这种情况下会返回undefined阅读此内容 另一种方法是检查
textContent
,但在IE中不支持 因此,我建议您尝试使用
innerHTML
而不是
innerHtml
(您必须小心这种情况),这应该在所有浏览器中都有效。     ,        给您的跨度属性“ 16”,并在CodeBehind中像Span1.InnerHtml,Span2.InnerHtml,Span3.InnerHtml等访问它们。或者,考虑到您从GridView中获取值,
((HtmlGenericControl)grid.rows[x].cells[y].FindControl(\"yourSpanId\")).InnerHtml
。     ,        
<script language=\"javascript\" type=\"text/javascript\"> 
 function MyFunction(){
     var gridview = document.getElementById(\'ctl00_ContentPlaceHolder1_gvmanageclients\'); 
            var rCount = gridview.rows.length;
            alert(gridview.rows.length);
            var rowIndex=1;

            for (rowIndex; rowIndex<=rCount-1; rowIndex++)
            {
                var rowElement = gridview.rows[rowIndex];
                Cell = gridview.rows[rowIndex].cells[0];
                FirstControl = Cell.childNodes[0];
                alert(FirstControl.innerHTML);  

             }

  }
 </script>