jQuery下拉列表选中选项显示输入字段

时间:2015-11-16 15:05:46

标签: jquery select input

jQuery获得价值问题。 选择选项值other时,如何获取输入字段?

 <script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
 <script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>


 <select  id="carm3" name="interest">
 <option value="">    Dogs</option>
 <option value="">    Cats</option>
 <option value="">    Rabbits</option>
  <option  value="    other">other</option>
  </select>
 <input type="text" name="other_interest" style="display:none" />

<script>
      jQuery(document).ready(function() {
          jQuery("#carm3").val(3).text(function() {
          if (jQuery.inArray(jQuery("other"))){ 
           jQuery('input[name=other_interest]').show();   
              return false;
          } 
        });

  });

2 个答案:

答案 0 :(得分:1)

你在这里:http://jsfiddle.net/Lxen6qp1/

&#13;
&#13;
jQuery(document).ready(function() {
    jQuery("#carm3").change(function() {
        if (jQuery(this).val() === 'other'){ 
            jQuery('input[name=other_interest]').show();   
        } else {
            jQuery('input[name=other_interest]').hide(); 
        }
    });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="carm3" name="interest">
    <option value="d">Dogs</option>
    <option value="c">Cats</option>
    <option value="r">Rabbits</option>
    <option value="other">other</option>
</select>
<input type="text" name="other_interest" style="display:none" />
&#13;
&#13;
&#13;

答案 1 :(得分:1)

像这样 - 请注意我删除了值中的前导空格并处理重新加载。

$(function() {
  $("#carm3").on("change",function() {
    $('input[name="other_interest"]').toggle(this.value == "other");
  }).change(); // in case of reload
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="carm3" name="interest">
  <option value="">Dogs</option>
  <option value="">Cats</option>
  <option value="">Rabbits</option>
  <option value="other">other</option>
</select>
<input type="text" name="other_interest" style="display:none" />