如果选择了某个下拉列表,请添加文本字段

时间:2011-10-28 04:07:48

标签: javascript html forms

我有一个网络表单,如果在下拉列表中选择了某个选项,我需要在屏幕上显示一个附加字段。我已经在线跟踪了几个Javascript教程,到目前为止还没有任何工作。这是我已经尝试过的事情之一:

    <script type="text/javascript">
    function setup(ans) {
      lit = ''
      if (ans == 'manual') {
        lit = 'Manual Selected'
        lit = lit + '<tr>'
        lit = lit + '<th align="right" class="body-text">Add New Group</th>'
        lit = lit + '<td class="body-text"><input type="text" name="groupadd">'
        lit = lit + '</td> </tr>'
     }
      document.getElementById('rep').innerHTML=lit
    }
    </script>

它不起作用。我还能尝试什么?

我也看过“http://stackoverflow.com/questions/7353403/javascript-hide-a-form-input-depending-on-the-value-of-a-particular-drop-down”但它也不适合我。

谢谢!

这就是我要添加的内容:

    <tr>
        <th align="right" class="body-text">Add New Group</th>
        <td class="body-text"><input type="text" name="groupadd"></td>
    </tr>

3 个答案:

答案 0 :(得分:0)

我不是HTML专家,但你可以做的是将tr放入div,并隐藏其可见性,当选择某个选项时,在javascript中获取div的id并设置其visibility = visible ...

这只是一个想法...

答案 1 :(得分:0)

假设你想要vanilla javascript,那么你需要在页面加载时将元素的可见性设置为隐藏,并在选择该选项时显示它。

基本语法是:

document.getElementById('hideshow').style.visibility = 'hidden';
document.getElementById('hideshow').style.visibility = 'visible'; 

其中'hideshow'是您要修改的元素的ID。

有关如何执行此操作的示例,请参阅http://www.webmasterworld.com/forum91/441.htm

答案 2 :(得分:0)

试试这个。

  trElement = document.createElement('tr');

  thElement = document.createElement('th');
  thElement.className = "body-text";
  thElement.innerHTML = "Add New Group";

  trElement.appendChild(th);

  tdElement = document.createElement("td");
  tdElement.className = "body-text";
  inputElement = document.createElement("input");
  inputElement.type = "text";
  inputElement.name = "groupadd";

  tdElement.appendChild(inputElement);
  trElement.appendChild(tdElement);

  document.getElementById("new_field_div").appendChild(trElement);