javascript - 如果选择了某个选项值,则显示字段 - 必须在页面加载时工作

标签 javascript jquery select show

genius code适用于复选框:

$(document).ready(function() {
   $("#Languages-spoken-and-understood-8").change(function() {
      $("#li-2-21")[$(this).is(":checked") ? 'show' : 'hide']("fast")
  }).change();
});

我喜欢的是它可以在加载时运行。

我试图为一个选择框修改它。代码由 wordpress 上的 cforms 自动生成。

<select name="Severity-of-your-symptoms" id="Severity-of-your-symptoms" class="cformselect" >
    <option value="full01_severity_notselected" selected="selected">Please select...</option>
    <option value="Mild">Mild</option>
    <option value="Moderate">Moderate</option>
    <option value="Severe">Severe</option>
    <option value="full01_severity_other">Other</option>
</select>

这是我尝试过的:

  $('#Severity-of-your-symptoms').change(function() {
    $("#li-10-14")[("#Severity-of-your-symptoms[value='full01_severity_other']").attr('selected', 'selected') ? 'show' : 'hide']("fast")
  });change();

显然它不起作用。只有选择“其他”时,才会出现文本框。 有没有办法以某种方式再次使用那个漂亮的代码,或者我需要更大的功能?

谢谢!

最佳答案

你快到了,这将是一种更短的方法:

$('#Severity-of-your-symptoms').change(function() {
  $("#li-10-14")[$(this).val() == "full01_severity_other" ? 'show' : 'hide']("fast");
}).change();

You can give it a try here .

获取或设置 <select> 的值时(或任何其他输入类型元素)您可以使用 .val() .如果有人想要这个没有动画的,它看起来像这样:

$('#Severity-of-your-symptoms').change(function() {
  $("#li-10-14").toggle($(this).val() == "full01_severity_other");
}).change();

关于javascript - 如果选择了某个选项值,则显示字段 - 必须在页面加载时工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3580886/

相关文章:

mysql - sql select查询返回大写

Javascript:一个函数,它是 IIFE 以及供以后使用的函数定义

javascript - 如何避免或解决下取整函数和错误表示的整数?

javascript - jQuery 循环遍历表格来显示值

jQuery 整个 HTML 页面使用微调器加载

jquery - 克隆表的第n行?

javascript - 如何使用 jQuery 获取事件目标的父级?

Mysql选择条件

javascript - DOM 元素过多

mysql - SQL 语句 where 子句按年龄组