включить или отключить кнопку отправки в jquery, когда поле jml_automati c меньше поля id_km - PullRequest
1 голос
/ 10 июля 2020

Я только что выучил jquery в прошлом месяце, и теперь я пытаюсь работать над формой с jquery, чтобы пользователи могли вводить запрос на бензин. но скрипт не работает для сравнения значения из #jml_km с #id_km, и кнопка отправки все еще не отключена, когда значение из сравнения истинно

    <strike>
    <form class="form-horizontal" role="form" action="<?php echo $action; ?>" method="post" id="form">
    
                <div class="form-group">
                    <label class="col-xs-8 col-sm-3" for="id_tipe">Tipe Aset</label>
                    <div class="col-xs-8 col-sm-3">
                        <?php echo form_dropdown('field[id_tipe]', $list_tipe,$id_tipe, 'id="id_tipe"    class="form-control" required'); ?>    
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-xs-8 col-sm-3" for="id_km">Kilometer</label>
                    <div class="col-xs-8 col-sm-3">
                        <?php echo form_dropdown('field[id_km]', $list_kilometer,$id_km, 'id="id_km" class="form-control" required'); ?>    
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-xs-8 col-sm-3" for="km_sebelumnya">Kilometer Sebelumnya</label>
                    <div class="col-xs-8 col-sm-3">
                        <input type="text" placeholder="Kilometer Sebelumnya" id="km_sebelumnya" name="field[km_sebelumnya]" class="form-control" value="<?=$km_sebelumnya?>" >
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-xs-8 col-sm-3" for="km_pengajuan">Kilometer Pengajuan</label>
                    <div class="col-xs-8 col-sm-3">
                        <input type="text" placeholder="Kilometer Pengajuan" id="km_pengajuan" name="field[km_pengajuan]" class="form-control" value="<?=$km_pengajuan?>" >
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-xs-8 col-sm-3" for="jml_km">Jumlah Kilometer</label>
                    <div class="col-xs-8 col-sm-3">
                        <input type="text" placeholder="Jumlah Kilometer" id="jml_km" name="field[jml_km]" class="form-control" value="<?=$jml_km?>" readonly >
                    </div>
                </div>
                <div class="form-group">
                    <label class="<?php echo COL_FORM_LABEL;?>"></label>
                    <div class="<?php echo COL_FORM_INPUT;?>">
                        <button class="btn btn-info" type="submit" id="btn_submit">Simpan</button>
                        <button class="btn btn-default" type="button" id="btnClear">Hapus</button>
                        <button class="btn btn-danger" type="button" id="btn_back">Kembali</button>
                    </div>
                </div>
        $(document).ready(function() {
            $("#km_sebelumnya, #km_pengajuan").keyup(function() {
                var km_sebelumnya  = $("#km_sebelumnya").val();
                var km_pengajuan = $("#km_pengajuan").val();
    
                var jml_km = parseInt(km_pengajuan) - parseInt(km_sebelumnya);
                $("#jml_km").val(jml_km);
            });
        });
    
            $(document).on('change', '#jml_km', function(){
            $('#btn_submit').prop('disabled',true);
                var idKm = parseInt($('#id_km').val());
                var jmlKm = parseInt($(this).val());
                    if ($(this).val() >= $('#id_km').val() ) {
                        $('#btn_submit').prop('disabled', false);
                    } else {
                        $('#btn_submit').prop('disabled', true);
                    }
                });

проблема в том, что кнопка отправки все еще не отключается, когда сравнение произведено верно, помогите пожалуйста

Ответы [ 2 ]

0 голосов
/ 10 июля 2020

Вы можете попробовать приведенный ниже сценарий, он работает.

    if ($(this).val() >= $('#id_km').val() ) 
    {
         $('#btn_submit').removeAttr("disabled", "disabled");
         $('#btn_submit').css("cursor", "pointer");
    } 
    else {
          $('#btn_submit').attr("disabled", "disabled");
          $('#btn_submit').css("cursor", "not-allowed");
    }
0 голосов
/ 10 июля 2020

вывод этого кода if ($(this).val() >= $('#id_km').val() ) составляет 5> 32, это сравнение первых цифр, а не сравнение их значений, чтобы исправить это, используйте if (Number($(this).val()) >= Number($('#id_km').val()) )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...