Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery:if语句选择选项值_Javascript_Jquery_Django - Fatal编程技术网

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){

我的目标是:

  • 如果我键入的值大于60,那么我希望选择“Long” 待选择
  • 如果我键入的值小于60,那么我希望选择“Short”选项
  • 在jQuery的帮助下,我希望在给定字段“value”的情况下自动更改“result”

    我有一个表单,包含一个id为“value”的输入整数字段,表单有一个id为“result”的选项字段

    下面是我的尝试,但不起作用

    谢谢你的意见

    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>