bugfix> javascript > 投稿

クエリの結果が真である場合、モーダルのフィールドを無効にする必要があります、それを行う方法のアイデアがありますが、それを指定することができませんでした、私はコード内の助けや修正を感謝します:

コントローラ

   function evaluarTrabajador(){
    $this->load->model("Prwtrabajadores_model");
    $idTrabajador = $this->input->post('idEdit');
    $this->Prwtrabajadores_model->revisaCertificados($idTrabajador);
    }

モデル

   function revisaCertificados($idTrabajador){
    return $this->db
        ->select("a.idprw_estadocertificado")
        ->from("prw_estadocertificado as a")
        ->join($this->schemaEmpresas."wom_trabajadores as b")
        ->where("b.idwom_trabajadores", $idTrabajador)
        ->where("a.idprw_estadocertificado = 1 || 4 || 5")
        ->get()->result();
        $query = result();
            if ($query->num_rows() > 0){
                return true;
            }else{
                return false;
            }
       }

ビューからのJS、今ではJSはデータベースからのデータを表示しますが、クエリがtrueの場合はテキストフィールドをブロックする必要があります

$(".editarT").on("click", function(id){
    var id = $(this).data("idtra");
    $.ajax({
        url : "<?php echo site_url('/contratista/ajax_edit/')?>/" + id,
        type: "GET",
        dataType: "JSON",
        success: function(data)
        {   
            $('input[name="idEdit"]').val(data[0].idwom_trabajadores);
            $('input[name="rutEdit"]').val(data[0].rut);
            $('input[name="nombresEdit"]').val(data[0].nombres);
            $('input[name="appEdit"]').val(data[0].apellido_paterno);
            $('input[name="apmEdit"]').val(data[0].apellido_materno);
            $('input[name="cargoEdit"]').val(data[0].cargo);
            $('input[name="telefonoEdit"]').val(data[0].telefono);
            $('input[name="mutualEdit"]').val(data[0].mutual);
            $('#form-modal-editar-trabajador').modal({show:true});  
        },
        error: function (jqXHR, textStatus, errorThrown)
        {
            alert('Error obteniendo datos');
        }
    });
   });

回答 1 件
  • これは、あなたの望むことですか?

    $(".editarT").on("click", function(id){
        var id = $(this).data("idtra");
        $.ajax({
            url : "<?php echo site_url('/contratista/ajax_edit/')?>/" + id,
            type: "GET",
            dataType: "JSON",
            success: function(data)
            {   
                $('#form-modal-editar-trabajador').modal({show:true});  
                if(data.length > 0){
                    $('input[name="idEdit"]').val(data[0].idwom_trabajadores).prop('disabled', true);
                    $('input[name="rutEdit"]').val(data[0].rut).prop('disabled', true);
                    $('input[name="nombresEdit"]').val(data[0].nombres).prop('disabled', true);
                    $('input[name="appEdit"]').val(data[0].apellido_paterno).prop('disabled', true);
                    $('input[name="apmEdit"]').val(data[0].apellido_materno).prop('disabled', true);
                    $('input[name="cargoEdit"]').val(data[0].cargo).prop('disabled', true);
                    $('input[name="telefonoEdit"]').val(data[0].telefono).prop('disabled', true);
                    $('input[name="mutualEdit"]').val(data[0].mutual).prop('disabled', true);
                }
                else{
                    $('input[name="idEdit"]').val('').prop('disabled', false);
                    $('input[name="rutEdit"]').val('').prop('disabled', false);
                    $('input[name="nombresEdit"]').val('').prop('disabled', false);
                    $('input[name="appEdit"]').val('').prop('disabled', false);
                    $('input[name="apmEdit"]').val('').prop('disabled', false);
                    $('input[name="cargoEdit"]').val('').prop('disabled', false);
                    $('input[name="telefonoEdit"]').val('').prop('disabled', false);
                    $('input[name="mutualEdit"]').val('').prop('disabled', false);
                }
            },
            error: function (jqXHR, textStatus, errorThrown)
            {
                alert('Error obteniendo datos');
            }
        });
    });   
    
    

あなたの答え