display none清除文本区域值
问题描述:
<textarea>
的内容似乎会被清除,只要我用display : none
将其隐藏并通过删除display
再次显示它。当textarea再次显示时,有没有办法保留原始值?display none清除文本区域值
答
也许尝试使用jQuery或其他JavaScript框架。 在jQuery的情况下,显示和隐藏功能对你来说是神奇的。
<textarea cols="5" rows="5" id="test">Test</textarea>
<input type="button" value="switch on" onclick="$('#test').show();">
<input type="button" value="switch off" onclick="$('#test').hide();">
那么,如果你只是删除显示器,可能会有一些故障。如果要使其再次可见,则必须将其设置为内联(如果是内联元素)或块(如果是块元素)。 css-Property显示可以设置为none | inline |块。因此,如果您将显示设置为“无”,则应将其重新设置为内联,而不是随后移除该属性。
这里是一个解决方案W/O jQuery的:你的代码或的jsfiddle
<textarea id="test">TEST</textarea>
<input type="button" value="switch on" onclick="showTest();"/>
<input type="button" value="switch off" onclick="hideTest();"/>
<script type="text/javascript">
function hideTest() {
var field = document.getElementById('test');
field.style.display = 'none';
}
function showTest() {
var field = document.getElementById('test');
field.style.display = 'inline';
}
</script>
你可以发布?正如你所看到的,这不是正确的行为:http://jsfiddle.net/g9gSf/ – j08691 2012-02-28 21:57:44