textarea值未显示在该区域中

时间:2011-12-07 02:52:42

标签: javascript html

我对以下问题摸不着头脑。

我有一个复选框。如果它被勾选,我会显示一个textarea,通过以下Javascript删除样式。在每个页面加载时,textarea都隐藏在textarea标记之间加载的数据。当用户点击它时,它应该出现,它不会做!当我使用Firebug或Chrome进行检查时,我会看到数据应该在哪里。在Firebug中,如果我添加class =""它会在运行中出现,但是当我将其添加到离线状态时,它将从页面加载中显示出来,它不会出现。

抱歉有点神秘,此页面是更大的嵌入式网页的一部分,无法在互联网上找到。

你有什么想法吗?

HTML code:

<tr id="my_tr" style="display: none;">
<td colspan="2">
<div id="my_div">
<textarea cols="25" rows="3" name="my_textarea">initial data to be shown</textarea>
</div>
</td>
</tr>

JS代码:

function show_hide_my_textarea() {
  var my_checkbox = $(tick_box_ref);
  var my_tr = document.getElementById("my_tr");

  if (my_checkbox.checked == true) {
      my_tr.style.display = '';
  } else {
      my_tr.style.display = 'none';
  }
}

更新: 对不起,我没有正确解释。 textarea本身出现,但它仍然是空的。

4 个答案:

答案 0 :(得分:2)

if (my_checkbox.checked == true) {
    my_tr.style.display = 'table-row';
} else {
    my_tr.style.display = 'none';
}

将显示设置为无效,请尝试将其设置为table-rowhttps://developer.mozilla.org/en/CSS/display

答案 1 :(得分:2)

不是将display设置为空,而是将其设置为table-row

my_tr.style.display = 'table-row';

https://developer.mozilla.org/en/CSS/display &lt; - 更新

答案 2 :(得分:1)

my_tr.style.display = 'block';

应该做的伎俩

答案 3 :(得分:1)

放入第一个if:

my_tr.style.display = 'block';

而不是将其留空,如果它不起作用,请粘贴其余代码:)

如果是display:none,则需要指定back display:block以便再次显示,否则它将保持隐藏状态。