jQuery设置和获取span的内容 (详解)

3 篇文章 0 订阅

先看个示例,示例代码如下:

<html>
  <head>
    <SCRIPT language=JavaScript src="js/jquery.min.js"></SCRIPT>
    <SCRIPT language=JavaScript>
       var test1=$("#spId").val();
       var test2=$("#spId").html();
       var test3=$("#spId").text();
     alert("val的值:"  + test1);
     alert("html的值:" + test2);
     alert("text的值:" + test3);
    </script>
  </head>
  <body>
     <span id="spId">aaaa</span>
  </body>
</html> 

alert的结果  如下

【val的值:undefined】

html的值:null】

text的值:

上面三种都没有取得想要的值,之所以没有取到是因为html是从上往下解析的,在解析到js里的$("#spId")时,下面这个span还不存在,当然就取不到了。
如果改成下面这样

<html>
  <head>
    <SCRIPT language=JavaScript src="js/jquery.min.js"></SCRIPT>    
  </head>
  <body>
     <span id="spId">aaaa</span>
     <SCRIPT language=JavaScript>
       var test1=$("#spId").val();
       var test2=$("#spId").html();
       var test3=$("#spId").text();
       alert("val的值:"  + test1);
       alert("html的值:" + test2);
       alert("text的值:" + test3);
     </script>
  </body>
</html> 

js在span的后面解析,span就有了。另外,jquery的做法是用ready函数包含这些代码,放哪就无所谓了。它的作用就是在加载完整个页面后才执行包含的js,如:

<script type="text/javascript">
   $(document).ready(function(){
       var test1=$("#spId").val();
       var test2=$("#spId").html();
       var test3=$("#spId").text();
       alert("val的值:"  + test1);
       alert("html的值:" + test2);
       alert("text的值:" + test3);
   });
</script>
一、
所以,span 的设置和获取如下:
<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("button").click(function(){
       $("#spId").text("testSpan");
       alert("text的值:" + $("#spId").text())
  });
});
</script>
</head>
<body>
<div><span id="spId"><a href="#">aaaa</a></span></div>
<button>切换</button>
</body>
</html>

二、

如果想获得html代码,把text换成html就可以了,

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("button").click(function(){
       alert("text的值:" + $("#spId").text())
       alert("html的值:" + $("#spId").html())
  });
});
</script>
</head>
<body>
<div><span id="spId"><a href="#">aaaa</a></span></div>

<button>切换</button>
</body>
</html>


设置html,并取得 html, 如下

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("button").click(function(){
       alert("text的值:" + $("#spId").text() + "\n" +
             "html的值:" + $("#spId").html() )

       $("#spId").text("testSpan")

       alert("text的值:" + $("#spId").text() + "\n"+
             "html的值:" + $("#spId").html() )

       $("#spId").html("<p>testSpantest</p>")

       alert("text的值:" + $("#spId").text() + "\n"+
             "html的值:" + $("#spId").html() )
  });
});
</script>
</head>
<body>
<div><span id="spId"><a href="#">初期值</a></span></div>

<button>切换</button>
</body>
</html>

结果:



三、注意点:

<html>
<head>
<script type="text/javascript" src="/jquery/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
  $("button").click(function(){
       <span style="background-color: rgb(255, 204, 204);">$("#spId").text("testSpan");</span>
       alert("text的值:" + $("#spId").text())
       <span style="background-color: rgb(255, 204, 153);">alert("html的值:" + $("#spId").html())</span>
  });
});
</script>
</head>
<body>
<div><span id="spId"><a href="#">aaaa</a></span></div>

<button>切换</button>
</body>
</html>
结果



此时 ,获取的html()为 【testSpan】,而不是【<a href="#">testSpan</a>

















  • 13
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值