关于ElementsByTagName的取值问题
这段时间,由于⼯作,所以要接触js,由于⽂件的命名出现了**-**.**中间出现了横杠,所以我就想⽤ElementsByTagName来取动态⽣成的<li>⾥⾯的value值了,但是奇怪的问题就出现了,调试只出现**,后⾯的-**.**这部分就取不到了(请看下⾯的⼩demo),我就奇怪了,后来在雷兔问了⼀下,终于解决了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>⽆标题⽂档</title>
</head>
<body>
<div>
<ul id="loading">
<li value="21_1">21-113123123</li>
<li value="21_2">21-212312312321</li>
<li value="21_3">21-3</li>
<li value="21_4">21-4</li>
<li value="21_5">21-5</li>
<li value="21_6">21-6</li>
<li value="21_7">21-7</li>
</ul>
<input name="" type="button"  value="点击触发"onClick="onlon()">
</div>
<script type="text/javascript">
function onlon(){
var ta = ElementById("loading");
var t = ta.getElementsByTagName('li');
var len = t.length;
for(i=0; i < len; i++){
alert(t[i].value);
}
}
</script>
</body>
</html>
//////////////////////////////////////////////////////////////////////////////////////////////////////////
html document是什么
原因就在<li>⾥⾯的value的属性,因为浏览器会将value的值直接⽤parsetInt转⼀下的,所以搞的后⾯那部分就取不到了,只要改了后⾯的value的名字,再⽤getAttribute()输出就好了
所以该证以上错误,就有了下⾯的代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>⽆标题⽂档</title>
</head>
<body>
<div>
<ul id="loading">
<li val="21_1">21-113123123</li>
<li val="21_2">21-212312312321</li>
<li val="21_3">21-3</li>
<li val="21_4">21-4</li>
<li val="21_5">21-5</li>
<li val="21_6">21-6</li>
<li val="21_7">21-7</li>
</ul>
<input name="" type="button"  value="点击触发"onClick="onlon()"> </div>
<script type="text/javascript">
function onlon(){
var ta = ElementById("loading");
var t = ta.getElementsByTagName('li');
var len = t.length;
for(i=0; i < len; i++){
alert(t[i].getAttribute('val'));
}
}
</script>
</body>
</html>
~~~~呵呵,不知道算不算问题的⾃我发现呢·~~

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。