我正试图根据其ID隐藏一个元素,但是我无法使其正常工作。我已经用谷歌搜索了答案,但是,不管我做什么,我似乎都无法使它对我有用。
我的代码附在下面。
<!DOCTYPE html>
<html>
<!-- HTML -->
<body>
<div id="role" value="Edit">
<button> Edit </button>
</div>
</body>
<!-- Javascript -->
<script>
if(document.getElementById("role").value == 'Edit'){
document.getElementById("role").style.display = 'none';
}
</script>
</html>
答案 0 :(得分:2)
您可以使用下面的代码,要获取属性而不是值。
如果需要,可以使用querySelector代替getElementById。
var role = document.querySelector('#role');
if(role.getAttribute('value') == 'Edit'){
role.style.display = 'none';
}
<!DOCTYPE html>
<html>
<!-- HTML -->
<body>
<div id="role" value="Edit">
<button> Edit </button>
</div>
</body>
</html>
答案 1 :(得分:1)
您尝试过吗?
<!DOCTYPE html>
<html>
<!-- HTML -->
<body>
<div id="role" value="Edit">
<button> Edit </button>
</div>
</body>
<!-- Javascript -->
<script>
if(document.getElementById("role").getAttribute('value') == 'Edit'){
document.getElementById("role").style.display = 'none';
}
</script>
答案 2 :(得分:0)
在您的示例中,document.getElementById("role").value
未定义。要检索属性值,应使用element.getAttribute('attr')
方法或element.attributes[attr].value
。
您的情况应该是document.getElementById("role").attributes['value'].value