jQuery确定选择了哪个<option> </option>

时间:2013-09-03 10:30:58

标签: jquery

我有我的选择框:

 <select name="in_slider" id="in_slider">
     <option value="1">Yes</option>
     <option value="0" selected="selected">No</option>
 </select>

正如您所看到的,其中有两个已经被选中(它需要默认为此选择,以便在传递到数据库时正确处理)

下面我有另一个选择和选项,完全相同的代码只是具有不同的名称和ID。

当用户点击第一个选择选项并将值更改为是(1)我需要第二个选择隐藏()

我试过了:

$(document).ready(function() {
    var selectedoption = $('#in_slider').val();
    var valueistrue = "1";

    if (selectedoption == valueistrue) {
        $('#selectboxtwo').hide();  
    }
});

但无济于事。 :(

因为已经选择了一个值,所以它会在页面加载的那一刻运行,我不能让它发生,因为最初第二个选择需要可见。

JsFiddle = http://jsfiddle.net/WwnbG/

6 个答案:

答案 0 :(得分:1)

您需要调用第一个选择选项的change函数,然后在其中编写代码。

$('#in_slider').change(function () {
   var selectedoption = $('#in_slider option:selected').val();
   var valueistrue = "1";

   if (selectedoption == valueistrue) {
      $('#selectboxtwo').hide();
   }
});

JS Fiddle Example

Your Fiddle Example

答案 1 :(得分:1)

  var selected = $('#in_slider option:selected');

答案 2 :(得分:1)

请查看fiddle

$(document).ready(function() {


    $( "#in_slider").change(function() {

    var selectedoption = $('#in_slider').val();

    var valueistrue = "1";

    if (selectedoption == valueistrue) {
        $('#in_stock').hide();

    }
});



});         

答案 3 :(得分:0)

$('#in_slider option:selected').text()

答案 4 :(得分:0)

获取所选值:

var selected_value = $("#in_slider option:selected").val();

或获取选择的文本:

var selected_text = $("#in_slider option:selected").text();

我编辑了你的JSFiddle:

http://jsfiddle.net/WwnbG/13/

<div class="section-price-ch-third">
    <p>Display in slider?</p>
    <select name="in_slider" id="in_slider">
        <option value="1">Yes</option>
        <option value="0" selected="selected">No</option>
    </select>
</div>

<div class="section-price-ch-third">
    <p>In Stock?</p>
    <select name="in_stock" id="in_stock">
        <option value="1">Yes</option>
        <option value="0">No</option>
    </select>
</div>

<script type="text/javascript">
$("#in_slider").change(function(){

    var selectedoption = $("#in_slider option:selected").val();
    var valueistrue = "1";

    if (selectedoption == valueistrue) {
        $('#in_stock').hide();
    }else{
        $('#in_stock').show();
    }

});
</script>

答案 5 :(得分:0)

$(document).ready(function() {
    var selectedoption = $('#in_slider :selected').val();
    var valueistrue = $('<checkbox name> :checked').val(); ex: $('input[name=check] :checked').val()

    if (selectedoption == valueistrue) {
       $('#in_slider option[value=0]').hide();
    }
});

您的查询:“我需要第二个选择隐藏()”。你的意思是第二个选择选项应该被禁用/隐藏吗?