Kendo Grid не сохраняет заданную высоту, когда размер шрифта изменяется глобально из-за события нажатия кнопки - PullRequest
0 голосов
/ 27 января 2019

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

$('body').css("font-size", "20px");

Размер шрифта изменяется, как и ожидалось, но теперь мои сетки несохраняя свои высоты.Высоты установлены, но я не понимаю, почему они не сохранят это.После того, как я изменил размер шрифта, я могу сделать это, чтобы сбросить их высоту

let gridCustomer = $('#gridCustomer').data('kendoGrid');
let gridJob = $('#gridJob').data('kendoGrid');

if (gridCustomer) {
    gridCustomer.setOptions({
        height: 384
    });
}

if (gridJob) {
    gridJob.setOptions({
        height: 290
    });
}

, но мне не нужно было делать это, потому что они уже установлены, в этом примере вы можете увидеть, как сетки выходят за рамкиих рост

$(document).ready(function() {
  LoadGrid1();
  LoadGrid2();
});
$('#btn').on('click', function() {
  $('body').css("font-size", "20px");

});

$('#btn2').on('click', function() {
  let gridCustomer = $('#gridCustomer').data('kendoGrid');
  let gridJob = $('#gridJob').data('kendoGrid');

  if (gridCustomer) {
    gridCustomer.setOptions({
      height: 200
    });
  }

  if (gridJob) {
    gridJob.setOptions({
      height: 200
    });
  }
});

var data1 = [{
    "FirstName": "John",
    "LastName": "A"
  },
  {
    "FirstName": "Joe",
    "LastName": "B"
  },
  {
    "FirstName": "Jack",
    "LastName": "C"
  }
];

function LoadGrid1(data) {
  $("#gridCustomer").kendoGrid({
    height: 200,
    scrollable: true,
    sortable: true,
    pageable: true,
    selectable: "row",
    columns: [{
      field: "FirstName",
      title: "First"
    }, {
      field: "LastName",
      title: "Last"
    }],
    dataSource: {
      data: data1,
      pageSize: 14,
      schema: {
        model: {
          fields: {
            FirstName: {
              type: "string"
            },
            LastName: {
              type: "string"
            }
          }
        }
      }
    },
    change: function(e) {
      var customerGrid = $("#gridCustomer").data("kendoGrid");
      var dataRow = customerGrid.dataItem(customerGrid.select());

    }
  });
}

function LoadGrid2() {
  $("#gridJob").kendoGrid({
    height: 200,
    scrollable: true,
    sortable: true,
    pageable: true,
    selectable: "row",
    columns: [{
        field: "JobName",
        title: "Job Name"
      },
      {
        field: "PONumber",
        title: "PO Number",
        filterable: false
      }
    ],
    toolbar: [{
        name: "open",
        template: "<button type='button' id='btnOpenOrder' data-toggle='tooltip' data-placement='bottom' title='Open order' disabled class='btn btn-warning btn-xs'><span class='glyphicon glyphicon-folder-open'></span> Open</button>&nbsp;"
      },
      {
        name: "search",
        template: "<button type='button' data-toggle='tooltip' data-placement='bottom' title='Find Order' disabled class='btn btn-warning btn-xs' onclick='FindJob()'><span class='glyphicon glyphicon-search'></span> Job Search</button>&nbsp;"
      },
      {
        name: "import",
        template: "<button type='button' data-toggle='tooltip' data-placement='bottom' title='Import Order' disabled class='btn btn-warning btn-xs' onclick='ImportJob()'><span class='glyphicon glyphicon-cloud-upload'></span> Import</button>&nbsp;"
      },
      {
        name: "export",
        template: "<button type='button' id='btnExportOrderDetailsFromGrid' data-toggle='tooltip' data-placement='bottom' title='Export Order' disabled class='btn btn-warning btn-xs'><span class='glyphicon glyphicon-cloud-download'></span> Export Selected</button>&nbsp;"
      },
      {
        text: "delete",
        template: "<button type='button' data-toggle='tooltip' data-placement='bottom' title='Delete Order' disabled class='btn btn-warning btn-xs' onclick='DeleteSelectedJobs()'><span class='glyphicon glyphicon-remove'></span> Delete Selected</button>"
      },
      {
        text: "chkDelete",
        template: "&nbsp;&nbsp;&nbsp;<input type='checkbox' data-toggle='tooltip' data-placement='bottom' title='Permanently Delete Order' disabled data-toggle='tooltip' data-placement='top' title='Permanently delete after Export or Delete'> Permanently Delete</input>"
      }
    ],
    dataSource: {
      data: data2,
      pageSize: 7,
      schema: {
        model: {
          fields: {
            JobName: {
              type: "string"
            },
            PONumber: {
              type: "string"
            }
          }
        }
      }

    },
    change: function(e) {


    },
    //noRecords: {
    //    template: "No Customer Selected."
    //}
  });
}

var data2 = [{
    "JobName": "Job 1",
    "PONumber": "PO1"
  },
  {
    "JobName": "Job 2",
    "PONumber": "PO2"
  },
  {
    "JobName": "Job 3",
    "PONumber": "PO3"
  },
];
.k-grid td {
  padding: 0 0 0 5px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<script src="https://kendo.cdn.telerik.com/2019.1.115/js/kendo.all.min.js"></script>

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">

<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.115/styles/kendo.default.min.css">

<link rel="stylesheet" href="https://kendo.cdn.telerik.com/2019.1.115/styles/kendo.common.min.css">

<div class="container-fluid">
  <div class="row">
    <div class="col-md-12">
      <div id="gridCustomer" style="margin-bottom: 5px"></div>
    </div>
  </div>

  <div class="row">
    <div class="col-md-12">
      <div id="gridJob" style="margin-bottom: 5px"></div>
    </div>
  </div>
  <br>
  <button id="btn">Change Font-size</button>
  <button id="btn2">Reset Grid Height</button>
</div>
...