【问题标题】:Condition in AJAX with multiple variabel具有多个变量的 AJAX 条件
【发布时间】:2020-09-12 07:20:32
【问题描述】:

我有这样的代码: (表单输入)

<label>Nomor Kartu Keluarga</label>
<select class="custom-select" id="nokk" name="nokk" required="" onkeyup="getortu()">
     <?php
     foreach($nokk->result_array() as $u)
    {
    echo '<option value="'.$u["nokk"].'">'.$u["nokk"].'   -  '.$u["namakepalakeluarga"].'</option>';
     }
     ?>
     </select>
    
    
 <label>Status Hubungan Dalam Keluarga</label>
 <select class="custom-select" id="statushubkeluarga" name="statushubkeluarga" required="" onkeyup="getortu()">
     <?php
     foreach($statushubkeluarga->result_array() as $u)
     {
     echo '<option value="'.$u["id"].'">'.$u["namastatushub"].'</option>';
     }
     ?>
     </select>

     <label>Nama Ayah</label>
      <select class="form-control" id="namaayah" name="namaayah" >
     </select>

而且,我想在“statushubkeluarga”== 3 时使用“AJAX”,但是当 != 3 使用输入标签时,我的 ajax 代码:

function getortu(){


            var nokk = $("#nokk").val();
            var statushubkeluarga = $("#statushubkeluarga").val();
            if(statushubkeluarga == 3){

    
            $.ajax({
              url : "<?php echo base_url();?>/MainController/Getnamaayah",
              method : "POST",
              data : {nokk:nokk},
              async : false,
              dataType : 'json',
              success: function(data){
                var html = '';
                var i;

                for(i=0; i<data.length; i++){
                  html += '<option value='+data[i].namakepalakeluarga+'>'+data[i].namakepalakeluarga+'</option>';
                }
                $('#namaayah').html(html);


              }
            });
          }else{

          }
        }

为什么我的 ajax 代码不起作用?我的状况不起作用,因此无法显示选项。帮帮我..谢谢你

【问题讨论】:

    标签: php ajax codeigniter


    【解决方案1】:

    问题似乎是onkeyup="getortu()"。你应该使用onchange

    详情请见HTML onchange AttributeONCHANGE attribute for INPUT elements

    function getortu() {
    
    
      var nokk = $("#nokk").val();
      var statushubkeluarga = $("#statushubkeluarga").val();
      if (statushubkeluarga == 3) {
        console.log('Send Ajax');
      } else {
        console.log('Do Not Send Ajax');
      }
    }
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <label>Nomor Kartu Keluarga</label>
    <select class="custom-select" id="nokk" name="nokk" required="" onchange="getortu()">
      <option value='a'>A</option>
      <option value='b'>B</option>
      <option value='c'>C</option>
    </select>
    
    <label>Status Hubungan Dalam Keluarga</label>
    <select class="custom-select" id="statushubkeluarga" name="statushubkeluarga" required="" onchange="getortu()">
      <option value='1'>1 Val</option>
      <option value='2'>2 Val</option>
      <option value='3'>3 Val</option>
    </select>
    
    <label>Nama Ayah</label>
    <select class="form-control" id="namaayah" name="namaayah">
    </select>

    【讨论】:

      【解决方案2】:

      您使用了错误的功能。您应该使用onchange 而不是onkeyup

      <select class="custom-select" id="statushubkeluarga" name="statushubkeluarga" required="" onchange="getortu()"></select>
      
      
      <select class="custom-select" id="statushubkeluarga" name="statushubkeluarga" required="" onchange="getortu()"></select>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-08-24
        • 2018-01-04
        • 1970-01-01
        相关资源
        最近更新 更多