Javascript 如何显示下拉列表中的选定选项

Javascript 如何显示下拉列表中的选定选项,javascript,jquery,Javascript,Jquery,任务: 创建一个下拉列表,其中包含供用户选择的选项。当用户从下拉列表中选择一个选项时。将自动显示一个附加字段,以显示用户选择的选项 所做的工作: 下拉列表已经创建,它显示了供用户选择的选项列表。我还设法在作为条件语句的一部分选择的选项中显示通过硬编码选择的选项 问题: 如何允许条件语句从所选下拉列表中读取,而不是在值中硬编码 代码: 下拉代码: <li class="bigfield"> <select name ="Agency"

任务:

创建一个下拉列表,其中包含供用户选择的选项。当用户从下拉列表中选择一个选项时。将自动显示一个附加字段,以显示用户选择的选项

所做的工作: 下拉列表已经创建,它显示了供用户选择的选项列表。我还设法在作为条件语句的一部分选择的选项中显示通过硬编码选择的选项

问题: 如何允许条件语句从所选下拉列表中读取,而不是在值中硬编码

代码:

下拉代码:

  <li class="bigfield">
                    <select name ="Agency" id="AgencyDetails" onchange = "return val(this.value);">
                    <option value ="0" selected = "selected"> Select Agency..</option>
                    <option value ="Name 1"> Name1</option>
                    <option value ="Name 2"> Name2</option>
                    <option value ="Name 3"> Name3</option>
                    <option value = "Others"> Others</option>
            </li>
条件语句以查看已选择的选项:

<script>
function val(x) {
    document.getElementById("AddDiv").style.display = x == "Others" ? "block" : "none";
    document.getElementById("Name1").style.display = x == "Name 1" ? "block" : "none";
    document.getElementById("Name2").style.display = x == "Name 2" ? "block" : "none";
    document.getElementById("Name3").style.display = x == "Name 3" ? "block" : "none";
}
</script>
选定选项的硬编码视图:

<div  id = "Name1" style ="display:none">
            <li class ="bigfield"><input placeholder="Agent1" type="text" name="agentName" id="agentName" <?php echo 'value="Agency 1"'?> disabled="disabled"/></li>
            </div>
.....(identical for Name2 and Name3)

使用jQuery,这是最简单的

$'AgencyDetails'。关于'change',函数{ $'result'.html$this.val; }; 选择代理。。 名称1 姓名2 名字3 其他
使用jQuery,这是最简单的

$'AgencyDetails'。关于'change',函数{ $'result'.html$this.val; }; 选择代理。。 名称1 姓名2 名字3 其他
为简化代码,请尝试修改HTML并使值等于要使其可见的id

$div.result.hide; $selectAgencyDetails.changefunction{ var selectedVal=$this.val; $div.result.hide; $div+selectedVal.show; };
为简化代码,请尝试修改HTML并使值等于要使其可见的id

$div.result.hide; $selectAgencyDetails.changefunction{ var selectedVal=$this.val; $div.result.hide; $div+selectedVal.show; }; 使用jQuery eq和selectedIndex:

风险值详情; var agencyChanged=function{ 细节隐藏; var i=此.selectedIndex; 如果0==i返回; var toShow=details.eqi 如果!toShow.length toShow=详细信息。等式0; toShow.show; }; $function{ 详情=$'div.details'; $'AgencyDetails'。在'ChangeKeyUp'上,agencyChanged.触发'change'; }; 选择代理。。 名称1 姓名2 名字3 其他 使用jQuery eq和selectedIndex:

风险值详情; var agencyChanged=function{ 细节隐藏; var i=此.selectedIndex; 如果0==i返回; var toShow=details.eqi 如果!toShow.length toShow=详细信息。等式0; toShow.show; }; $function{ 详情=$'div.details'; $'AgencyDetails'。在'ChangeKeyUp'上,agencyChanged.触发'change'; }; 选择代理。。 名称1 姓名2 名字3 其他
对不起,我可以问一下我应该把下面的代码放在哪里吗?答案更新了,但是请阅读链接文档并花一些时间阅读jQuery文档-这会有帮助的。谢谢您的文档。了解了吗?我想问您,我是否也可以使用var selectBox=form.fieldname;var selectedText=selectBox.options[selectBox.selectedIndex].text对不起,请问我应该把下面的代码放在哪里?答案已更新,但是请阅读链接的文档,并花一些时间在jQuery文档上—这会很有帮助的,谢谢您提供的文档。了解了解了吗?我想问您,我是否也可以使用var selectBox=form.fieldname;var selectedText=selectBox.options[selectBox.selectedIndex].text