当我点击一个标签时,就在下面,应该显示一些TextArea,其中包含一些预定义文本,用户不应该修改TextArea的内容。
这是我尝试的方式:
<html>
<head>
<script type="text/javascript">
function myfunc2() {
document.getElementById('showthis').style.visibility = "visible"
}
</script>
</head>
<body>
<label onclick="myfunc2()">Click here</label>
<textarea id="showthis" style="display:none">dfdsfsfasdfdsfsfasdfssdfsfasf</textarea>
</body>
</html>
我对这个HTML和javascript很新...请有人帮我这个..
答案 0 :(得分:6)
试试这个..
document.getElementById('showthis').style.display = "block";
document.getElementById('showthis').readOnly=true;
<强>更新强>
检查classname(hide)..如果是..显示textarea并将其命名为show
...否则隐藏它并将类名命名为hide
JAVASCRIPT
function myfunc2() {
var selectedobj=document.getElementById('showthis');
if(selectedobj.className=='hide'){ //check if classname is hide
selectedobj.style.display = "block";
selectedobj.readOnly=true;
selectedobj.className ='show';
}else{
selectedobj.style.display = "none";
selectedobj.className ='hide';
}
}
为您的html textarea
添加隐藏类。
HTML
<textarea id="showthis" style="display:none" class="hide">dfdsfsfasdfdsfsfasdfssdfsfasf</textarea> // add a class hide
答案 1 :(得分:2)
虽然您要设置visibility:visible
,但该元素仍具有样式属性display:none
,因此不会显示。
您应该使用visibility
覆盖display
属性,而不是设置block
属性。
将您的功能更改为:
function myfunc2() {
document.getElementById('showthis').style.display = "block";
}
答案 2 :(得分:0)
您想要更改display
属性,而不是visibility
属性,因此请更换以下行:
document.getElementById('showthis').style.visibility="visible"
这个:
document.getElementById('showthis').style.display="block"
见工作demo。
答案 3 :(得分:0)
CSS属性display
和visibility
不同。
如果你想简单地使元素不可见但保留它在布局中占据的位置,留下一个空白区域,那么使用visibility
会更有意义:
<textarea id="showthis" style="visibility:hidden">dfdsfsfasdfdsfsfasdfssdfsfasf</textarea>
http://www.w3.org/wiki/CSS/Properties/visibility
另一方面,使用display
将隐藏元素,但也会将其从布局中删除:
function myfunc2() {
document.getElementById('showthis').style.display="block";
}
答案 4 :(得分:-2)
你错过了
在
document.getElementById('showthis').style.visibility="visible"
您还需要更改display.style而不是元素的可见性
尝试这个
document.getElementById('showthis').style.display = "block";
或将visibility =“false”属性附加到textarea