Javascript jQuery:if语句选择选项值
我的目标是:Javascript jQuery:if语句选择选项值,javascript,jquery,django,Javascript,Jquery,Django,我的目标是: 如果我键入的值大于60,那么我希望选择“Long” 待选择 如果我键入的值小于60,那么我希望选择“Short”选项 在jQuery的帮助下,我希望在给定字段“value”的情况下自动更改“result” 我有一个表单,包含一个id为“value”的输入整数字段,表单有一个id为“result”的选项字段 下面是我的尝试,但不起作用 谢谢你的意见 var value=$('#value'); $(值).更改(函数(){ 调试器; 如果(数字($(this).val())>60){
var value=$('#value');
$(值).更改(函数(){
调试器;
如果(数字($(this).val())>60){
$('#result').prop('value')=“Long”;
}
if(数字($(this).val())<60){
$('#result').prop('value')=“Short”;
}
})
价值
结果:
长的
Short
您可以使用设置所选值
var value=$('#value');
$(值).更改(函数(){
调试器;
如果(数字($(this).val())>60){
$('select').val(“Long”);
}
if(数字($(this).val())<60){
$('select').val(“Short”);
}
})
价值
结果:
长的
简而言之,我在这里看到三件事:
您设置的值不正确。使用.val('Long')
,而不是.prop('value')='Long'
,后者不是有效的JavaScript,只需使用.val('Long')
您使用的是“result”ID,因此您的目标元素是错误的。ID必须是唯一的
HTML不完整。可能不是问题的原因,但肯定值得修复
更像这样:
var value=$('#value');
$(值).更改(函数(){
调试器;
如果(数字($(this).val())>60){
$('#result').val('Long');//1.使用jQuery正确设置值
}
if(数字($(this).val())<60){
$('#result').val('Short');
}
})
价值
结果:
长的
短
//无需使用jQuery函数包装两次“#value”
$('#value')。更改(函数(){
//您不需要两个IF,因为这两个值是互斥的
const option=$(this.val()>60?“长”:“短”;
//您有两个id为“result”的不同元素
//并且.val是一个函数,您可以将新值作为参数传递
$('选择').val(选项);
})
价值
结果:
短
长的
我想,这会对你有所帮助
$(文档).ready(函数(){
$(“#值”).on('input',function(){
var value=parseInt($(“#value”).val();
如果(值>60){
$(“#结果”).prop(“值”、“长”);
}
如果(值增加了,但是如果值为60,请考虑发生了什么,只需交换第二代码),如果< <代码> > <代码>另一个>代码>。我知道这不是被问到的,但是很明显,OP没有考虑它,并且可以在这个方向上做一个推敲:
i think,it will help you
<script src="Scripts/jquery-3.3.1.min.js"></script>
<script>
$(document).ready(function () {
$("#value").on('input', function () {
var value = parseInt($("#value").val());
if (value > 60) {
$("#result").prop("value", "Long");
}
if (value <= 60) {
$("#result").prop("value", "Short");
}
});
});
</script>
<input type="number" name="value" class="numberinput form-control" id="value" />
<select name="result" class="select2 form-control" style="width: 100%;" id="result">
<option value="Short">Short</option> <option value="Long">Long</option>
</select>