javascript - 文本区域未显示正确的列

标签 javascript html

我有一个小 JavaScript,可以让我显示和隐藏一些文本区域。

我首先显示 1 个文本区域,并使用属性 display:none 隐藏其他 4 个文本区域;

第一个文本区域显示正确,但是当我运行 javascipt 隐藏第一个文本区域并显示其他文本区域之一时,不会读取 cols 属性并且文本区域显示很小。

这是js代码:

<script language="javascript">
function collapser(tab_id) {

    document.getElementById("new_page_content_it").style.display = "none";
    document.getElementById("new_page_content_en").style.display = "none";
    document.getElementById("new_page_content_fr").style.display = "none";
    document.getElementById("new_page_content_es").style.display = "none";
    document.getElementById("new_page_content_de").style.display = "none";

    document.getElementById(tab_id).style.display = "block";

}
</script>

这里是 html:

<div id="new_page_tab_container"> 
    <a href="#" OnClick="javascript:collapser('new_page_content_it')"> 
        <div id="new_page_tab_it">Italian</div> 
    </a> 
    <a href="#" OnClick="javascript:collapser('new_page_content_en')"> 
        <div id="new_page_tab_en">English</div> 
    </a> 
    <a href="#" OnClick="javascript:collapser('new_page_content_fr')"> 
        <div id="new_page_tab_fr">French</div> 
    </a> 
    <a href="#" OnClick="javascript:collapser('new_page_content_es')"> 
        <div id="new_page_tab_es">Spanish</div> 
    </a> 
    <a href="#" OnClick="javascript:collapser('new_page_content_de')"> 
        <div id="new_page_tab_de">German</div> 
    </a> 
</div> 
<div id="new_page_content_it"> 
    <textarea name="content_it" id="content_it" cols="90" rows="40">italian</textarea> 
</div> 
<div id="new_page_content_en"> 
    <textarea name="content_en" id="content_en" cols="90" rows="40">english</textarea> 
</div> 
<div id="new_page_content_fr"> 
    <textarea name="content_fr" id="content_fr" cols="90" rows="40">french</textarea> 
</div> 
<div id="new_page_content_es"> 
    <textarea name="content_es" id="content_es" cols="90" rows="40">spanish</textarea> 
</div> 
<div id="new_page_content_de"> 
    <textarea name="content_de" id="content_de" cols="90" rows="40">german</textarea> 
</div> 
<div id="new_page_save"> 
    <input type="submit" value="Salva"/> 
</div>

CSS 定义 content_it 可见,但任何其他 content_xx 为 display:none;

为什么不读取 cols 属性?但最重要的是......如何摆脱这个问题?

谢谢!

最佳答案

首先,我建议您验证 HTML。例如,您在 anchor 元素(内联元素)内有 div 元素( block 元素),这是无效的。如果您使用 Firefox,我可以推荐这个 HTML 验证器插件:

http://users.skynet.be/mgueury/mozilla/

关于javascript - 文本区域未显示正确的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5975740/

相关文章:

javascript - 以 “Lunedì GG/MM”的形式获取意大利语格式的日期?

javascript - 弹出窗口中的链接不会关闭窗口?

html - SEC7115 : :visited and :link styles can only differ by color. 部分样式没有应用到:visited.

PHP $_POST 正在工作,但无法获取 HTML 元素的值

javascript - React - 变量的值未正确更改

javascript - 文本字段中的 css,因此文本作为一个词被删除

javascript - 如果 localStorage 为 null,则从 json 文件设置

jquery - 显示搜索栏并在按键后将其聚焦

javascript - 尝试根据特定输入字段是否具有焦点来显示元素

javascript - 在 Canvas 上绘制(渐进式)油漆飞溅