我想仅使用java脚本隐藏包含“Prasad”的span标记。 你可以看到div标签也有同样的id,我根本不想隐藏。
<body onload="onLoad();">
<div id="123">div</div>
<li id="test">
<span id="123" class="alert" >Prasad</span>
</li>
<li id="test">
<span id="456" class="alert" >Mphasis</span>
</li>
</body>
<script type="text/javascript">
function onLoad()
{
var x= document.getElementById("123").getElementsByClassName("alert");
x.style.display="none"; --->> getting error here as undefine
}
</script>
答案 0 :(得分:0)
$('#yourFormId').submit(function() {
// Something
return true; // True submit your form.
//return false; // False cancel your form.
});
应该是唯一的。相反,您应该使用id
并使用element.classList.contains这样检查元素是否包含class
提醒
class
&#13;
function onLoad() {
var x = document.getElementsByClassName("123")
for (var i = 0; i < x.length; i++) {
if (x[i].classList.contains("alert")) {
x[i].style.display = "none";
}
}
}
&#13;
P.S <body onload="onLoad();">
<div class="123">div</div>
<li class="test">
<span class="123 alert">Prasad</span>
</li>
<li class="test">
<span id="456" class="alert">Mphasis</span>
</li>
</body>
返回一个Object
答案 1 :(得分:0)
尝试将当前id="test"
更改为class="test"
。正如其他用户所提到的,ID应该是唯一的。
然后,您可以将id
添加到要隐藏的<li>
元素中。
所以你的代码看起来像这样:
<body onload="onLoad()">
<div class="123">div</div>
<li class="test" id="prasad">
<span class="123 alert">Prasad</span>
</li>
<li class="test">
<span id="456" class="alert">Mphasis</span>
</li>
</body>
然后您可以使用jQuery隐藏'Prasad'元素,如下所示:
$('#prasad').css({display:"none"});
这将在onLoad()
函数