通过判断Class的值用getElementByClassName隐藏Div元素..

JS部分:<scriptlanguage="javascript"type="text/javascript">vara='龙长春';varstr=document.ge... JS部分:

<script language="javascript" type="text/javascript">
var a = '龙长春';
var str=document.getElementById("kkk").innerHTML;
//alert(str);
if(str == a)
document.getElementById("kkk").style.display = "none";

</script>

--------------------------------------------------------------

Html部分:
<div id="kkk">龙长春6</div>

--------------------------------------------------------------

通过判断DIV里面的内容,如果符合条件则隐藏之...
上面的代码是可以实现的...
但是在具体的使用过程中,不能在DIV中使用 ID="XXX" 这样的形式...
因为DIV在前台只有一个,是后台通过代码循环出来的...
循环出来的结果就变成..
<div id="kkk">1111</div>
<div id="kkk">2222</div>
<div id="kkk">3333</div>
诸如此类...
但是一个html页面ID不允许重复..
所以必须用
<div class="kkk">龙长春</div>
这样的形式来表现...
但是这样JS就会出问题..
用:
document.getElementByClassName("kkk")
无法生效..页面也不报错..

初学JS...望大神解惑..
展开
 我来答
河清鱼戏水A
推荐于2017-10-13 · TA获得超过1963个赞
知道小有建树答主
回答量:753
采纳率:0%
帮助的人:661万
展开全部

js是不能根据类名直接获取页面元素的,但是有其他折中的方式,个人给你的参考程序如下:

输出列表外层添加div包,用于定位,减少程序检索范围:

 <div id="k1">//外层div包,用于js定位
    <div class="kkk">test1</div>
    <div class="kkk">test2</div>
    <div class="kkk">test3</div>
    <div class="kkk">test4</div>
 </div>
 <script>
 var list=document.getElementById("k1");//获取检索范围
 var str=list.getElementsByTagName("div");//获取检索内容块
 for(var i=0;i<str.length;i++)//遍历内容块
    if(str[i].className=="kkk")//判断类名是否为kkk
   if(str[i].innerHTML=="test1")//判断内容是否为指定
      str[i].style.display="none"; //满足条件内容隐藏显示
 </script>
追问
DIV中的内容为 :
龙长春
比较复杂,是类似CMS的系统产生出来的数据..导致不能判断.
包含XXX则隐藏...类似:
if (aa.indexOf('130830')<0)

隐藏
else
不隐藏
之类的..
但是不怎么会写,望高手不吝赐教..
myoungju
2013-09-25
知道答主
回答量:11
采纳率:0%
帮助的人:6.2万
展开全部
是不是写错问题。。document.getElementsByClassName("")少写了 s
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
王大爷丶闷
2013-09-25 · TA获得超过153个赞
知道小有建树答主
回答量:399
采纳率:100%
帮助的人:264万
展开全部
一般都用id
少用className
追问
但是DIV的数量很多,而且只有 DIV中的内容有变化...
其他都通过 for 循环语句出现...
所以如果用ID
所有DIV的ID都一样..
所以必须用class
追答
那我建议用tagName
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
miairan
2013-09-25 · 超过22用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:49.7万
展开全部
首先,你的getElementByClassName("kkk")可能写错了,一般都是getElementByClassName("kkk");

其次,如果你没有引用其他的已经写好getElementsByClassName(obj)方法的js文件,你这个方法就应该是要报错的,因为js中是没有这个方法的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式