The element with name no_needed is an input, not select.
<input type="number" name="no_needed" title="" required id="id_no_needed" step="0.01" />
So your selector for it should be input[name=no_needed] instead of select[name=no_needed].
Similarly, to select the input with name total_price, the selector would be input[name=total_price]. Also, since you intend to set value of it, instead of settings its .text(), you need to set .val().
See the updated snippet:
$(document).ready(function() {
$('select').on('change', function() {
$('input[name=total_price]').val($('select[name=max_size]').val() *
($('input[name=no_needed]').val()));
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="form-group"><label class="sr-only" for="id_max_size">Max
Size</label><select name="max_size" title="" required class="form-control" id="id_max_size">
<option value="" disabled selected>Size ↓</option>
<option value="10">AAA</option>
<option value="20">BBB</option>
<option value="30">CCC</option>
<option value="40">DDD</option>
</select>
</div>
<input type="number" name="no_needed" title="" required id="id_no_needed" step="0.01" />
<input type="number" name="total_price" title="" required id="id_total_price" step="0.01" />
Also, you could set a change event handler on no_needed input to update the total price even if the size doesn't change:
function recalculatePrice() {
$('input[name=total_price]').val(
($('select[name=max_size]').val() *
$('input[name=no_needed]').val()).toFixed(2)
);
}
$(document).ready(function() {
$('select').on('change', function() {
recalculatePrice();
});
$('input[name=no_needed]').on('input', function() {
if($(this).val()) {
if(!isNaN($(this).val())) {
recalculatePrice();
} else {
$(this).val("");
}
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="form-group"><label class="sr-only" for="id_max_size">Max
Size</label><select name="max_size" title="" required class="form-control" id="id_max_size">
<option value="" disabled selected>Size ↓</option>
<option value="10">AAA</option>
<option value="20">BBB</option>
<option value="30">CCC</option>
<option value="40">DDD</option>
</select>
</div>
<input type="number" name="no_needed" title="" required id="id_no_needed" step="0.01" />
<input type="number" name="total_price" title="" required id="id_total_price" step="0.01" />