2016-11-03 6 views
-1
geprüft werden sholud

Hier einige Code wenn i Optionsfeld wählen Sie die Option geändert klicken, aber wenn ich Option ausgewählt Radio wählen, aber nichtWenn ich wählen Sie wählen Sie die Option Optionsfeld

<select id="flight_select"> 

$('.select-change').click(function(){ 
 
    $('#flight_select').val($(this).data('val')).trigger('change'); 
 
})

geprüft
+1

Kontrolle, was ich Maat getan haben und lassen Sie mich wissen, ob dies ist, was Sie erreichen wollen. https://jsfiddle.net/trhqes25/2/ –

+0

Sollten Sie den Event-Listener 'change' verwenden? https://jsfiddle.net/trhqes25/1/ – evolutionxbox

Antwort

2

Sie müssen das Änderungsereignis von dropdown anhängen und dann ba sed auf den ausgewählten Wert klicken Sie den Radiobutton an.

$('.select-change').change(function() { 
 
    $('#flight_select').val($(this).data('val')); 
 
}); 
 

 
// attach change event handler 
 
$('#flight_select').change(function() { 
 
    // select radio based on `data-val` attribute 
 
    // and then set the checked property 
 
    $('.select-change[data-val="' + this.value + '"]').prop('checked', true); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="flight_select"> 
 
    <option value="A">Only Fly</option> 
 
    <option value="B">Fly + Bag</option> 
 
    <option value="C">Fly + Bag + Eat</option> 
 
</select> 
 

 
<input type="radio" name="flightType" id="only_fly" class="select-change" data-val="A"> 
 
<input type="radio" name="flightType" id="fly_bag" value="fly2" class="select-change" data-val="B"> 
 
<input type="radio" name="flightType" id="fly_bag_eat" value="fly3" class="select-change" data-val="C">


FYI: Es ist immer besser Änderungsereignis zu verwenden, anstatt Click-Ereignis für das Optionsfeld seit Ereignisse Klick wird auch ausgelöst, wenn Sie das geprüfte Radio sind klicken.

0

Sie müssen das Ereignis auf select Element binden, auch .trigger('change') ist redundant.

$('.select-change').click(function() { 
 
    $('#flight_select').val($(this).data('val')); 
 
}); 
 

 
$('#flight_select').change(function() { 
 
    $('.select-change[data-val=' + $(this).val() + ']').prop('checked', true) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="flight_select"> 
 
    <option value="A">Only Fly</option> 
 
    <option value="B">Fly + Bag</option> 
 
    <option value="C">Fly + Bag + Eat</option> 
 
</select> 
 

 
<input type="radio" name="flightType" id="only_fly" class="select-change" data-val="A"> 
 
<input type="radio" name="flightType" id="fly_bag" value="fly2" class="select-change" data-val="B"> 
 
<input type="radio" name="flightType" id="fly_bag_eat" value="fly3" class="select-change" data-val="C">