Вы должны использовать change
прослушиватель событий для input[name='sVehicle']
элементов и в функции использовать .nextAll()
для выбора следующего элемента после целевого ввода.
$(":radio").change(function(){
$("input[name='vehicleprice']").val(
$("input[name='sVehicle']:checked").nextAll(".badge").text()
);
console.log($("input[name='vehicleprice']").val());
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="col-md-3 tourpricecolumn">
<h6>Select Vehicle</h6>
<label class="radio">
<input type="radio" checked="checked" name="sVehicle">
<span class="checkround"></span>Car
<span class="badge badge-pill badge-primary">435</span>
</label>
<div class="clear"></div>
<label class="radio">
<input type="radio" name="sVehicle">
<span class="checkround"></span>Bus
<span class="badge badge-pill badge-primary">356</span>
</label>
<div class="clear"></div>
<label class="radio">
<input type="radio" name="sVehicle">
<span class="checkround"></span>Tempo Traveller
<span class="badge badge-pill badge-primary">567</span>
</label>
<input type="hidden" value="" name="vehicleprice" />
</div>
Обратите внимание, что вы можете использовать .trigger("change")
для запуска события изменения при загрузке страницы, чтобы установить значение первого проверенного радио на скрытый вход.
$(":radio").change(function(){
$("input[name='vehicleprice']").val(
$("input[name='sVehicle']:checked").nextAll(".badge").text()
);
}).trigger("change");