
建议去看看firstChild和firstElementChild的区别
针对你目前的实现方式,如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 10 Transitional//EN" "<html xmlns="
<meta ;
提供另外一种方式:直接给span一个id,然后通过documentgetElementById方法获取span的对象,然后获取span的innerHtml值;
第一段是获取 <p></p> 标签内部的数据,第二个是获取 <p><span></span></p> 标签中的数据,其中span标签中有style属性值。
使用过正则表达式的同学肯定知道,上面两种情况其实都是一种情况,我们要获取的是 尖括号括起来的一对标签 中间的数据,起始标签形如<x>,结束标签形如</x>,这里的x表示的html标签。
此外,我们还需要考虑起始标签中包含style的数据,另外特殊的 <br/> 标签,对实际获取数据无意义,也需要过滤掉。
通过上面的分析,我们可以如下正则表达式:
在使用正则表达式处理之前,我们先对数据进行预处理,比如style和
标签:
针对多个标签嵌套的情况进行处理,比如 <p><span style="white-space: normal;">王者荣耀</span></p> ,在经过预处理和正则匹配的后结果是 <span>王者荣耀 ,需要手工移除掉前面的起始标签,对应的方法如下:
测试方法如下:
output:
思路:根据标签名称获取所有span对象,然后根据类名筛选出目标对象,最后使用 innerHTML 属性获取文本。实例演示如下:
1、HTML结构
<span class="xing">姓氏</span><span class="name">名字</span>
<span class="sheng">籍贯</span> <br>
<input type='button' value='获取class=name的span' onClick="fun()"/>
2、javascript代码
function fun(){obj = documentgetElementsByTagName("span");
class_name = "name";
for(i in obj){
if(obj[i]className == class_name){
alert(obj[i]innerHTML);
return
}
}
}
3、效果演示
准确的说,提取span标签中间的内容可以使用javascript实现或者使用jQuery实现
1、使用javascript实现
a、为span设置一个id,写如下js代码
var value=documentgetElementById("span的id属性")innerHTML;或
var value=documentgetElementById("span的id属性")innerText;
就可以取出下面的span标签中间的文本
innerHTML和innerText的区别再是能否识别html标签
2、使用jQuery实现
a、为span设置一个id,写如下jquery代码
$("#span的id属性")html()或者
$("#span的id属性")text()
b、不设置任何属性
$("div span")html()取出div下第一个span的内容或者
$("div span")text()取出div下所有span的内容
1、给span一个id,或者给一个特定的class使用jquery的id选择器或者类选择器
<span id="spId" class="content">ajlwe</span>var str=$("#spId")html();--通过id获取span,然后通过html()获取span里的内容var str2=$("#spId")text();--通过id获取span,然后通过text()获取span里的内容
var str3=$("content")html();--通过class获取span,然后通过html()获取span里的内容
var str4=$("content")text();--通过class获取span,然后通过text()获取span里的内容
注:html()返回或设置被选元素的内容 (inner HTML);text()获取设置或返回被选元素的文本内容
有的时候无法取得值时,是因为html是从上往下解析的,在解析到js里的$("#spId")时,下面这个span还不存在,当然就取不到了。
js代码放在<span>下面解析时,span就有了。另外,jQuery的做法是用ready函数包含这些js代码,这样的话,就不存在位置的问题了,放到哪都可以。它的作用就是在加载完整个页面后才执行包含的js
SPAN 是行内元素,SPAN 的前后是不会换行的,它没有结构的意义,纯粹是应用样式,当其他行内元素都不合适时,可以使用SPAN。
<span>SPAN标记有一个重要而实用的特性,即它什么事也不会做,它的唯一目的就是围绕你的HTML代码中的其它元素,这样你就可以为它们指定样式了。
span是一个in-line元素,翻译为内联元素。它的特点是不会独占一行。它和块(block)级元素是相对的,块级元素是独占一行的。
比如你在网页中的某个位置加入一些文字,最好用span将文字包含起来,这样你在想取到这段文字的时候,就可以先取到该span,然后再取spaninnerhtml来得到文字 。
span标签语法格式<span>内容</span>语法格式说明
span标签是内联元素,不像块级元素(如:div标签、p标签等)哪样有换行的效果;如果不对span元素应用样式,使用span标签没有任何的显示效果;span标签可以设置id或class属性,这样不仅能增加语义,还能更方便的对span元素应用样式。
以上就是关于javaweb 获取span中的值全部的内容,包括:javaweb 获取span中的值、正则表达式匹配html标签,获取标签内容、js怎么获取<span class="name">名字</span>中的内容:名字等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)