javascript - 根据下拉值加载 html 表单?

标签 javascript html

我正在使用表格在 html 中创建一个表单。其中有一个下拉框包含两个值 1. Professor, 2. Librarian。现在每个值都有不同的表单字段。如果我选择 Professor,则会显示一些不同的字段,如果我选择 Librarian,则会显示一些不同的字段。

谁能告诉我该怎么做?

<table width="435" border="0"> 
  <tr> <td>VIsit Date </td> <td><input type="text" name="textfield" /></td></tr> 
  <tr> <td>Last Visit Date </td> <td><input type="text" name="textfield2" /></td></tr> <tr> <td>Call Type </td> 
         <td>
           <select name="title" size="1"> 
             <option value ="Pro"> Professor </option>
             <option value ="Lib"> Librarian </option> </select>
         </td>
  </tr>
</table>

最佳答案

试试这个:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Page title</title>


   <script src=http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js></script>
   <script>
        $(document).ready(function() {
            $("#callType").on('change', function(){
                $('.form1').toggle();
                $('.form2').toggle();
            });   
        });
   </script>
   <style>
       .form2 {
           display: none;
       }
   </style>

</head>
<body>

<select name="title" id="callType"> 
    <option value ="Pro"> Professor </option>
    <option value ="Lib"> Librarian </option> 
</select>

<div class="form1">
    <input type="text" name="text1" value="text1" />
    <input type="text" name="text2" value="text2" />
</div>

<div class="form2">
    <input type="text" name="text3" value="text3" />
    <input type="text" name="text4" value="text4" />
</div>

</body>
</html>

如果下拉列表中只有两个选项,第一个表单将可见,第二个将隐藏(显示:无;)。在更改时,他们的可见性将被切换。

有几点忘了说: 1. 准备好文档中的事件处理程序。 2. 请记住,在 css 中“visibility”和“display”是不同的。即使我说可见性,我指的是显示。 jQuery show()、hide()、toggle() 更改 css 显示。 "visibility: hidden"和 "display: none"的区别在于,有了可见性,不可见的元素仍然会占用页面空间。

关于javascript - 根据下拉值加载 html 表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11096736/

相关文章:

html - 有没有办法阻止 Outlook 在电子邮件中添加不需要的分页符?

javascript - 如何在此函数中获取父 ID?

javascript - 有没有另一种方法来检索 javascript 中的 html 元素

javascript - 如何在 two.js 中解释外部 svg 文件

javascript - 如何查找包含另一个嵌套选择器的多个选择器之一

javascript - 在样式中使用 Vue 变量

javascript - 为什么很难将 SVG 转换为 PDF 客户端,PDF 不是矢量格式吗?

javascript - 在javascript对象中平面数组的函数式编程方法

javascript - 如何让一个对象绕着html5 Canvas 中的一个点转动

javascript - 如何动态设置一个JS对象的属性名