【问题标题】:jqGrid does not align properly in screen layout. What is missing?jqGrid 在屏幕布局中没有正确对齐。缺什么?
【发布时间】:2018-06-04 21:43:41
【问题描述】:

在下面的示例中,3 个 jqGrid 没有正确对齐。我已经创建了这样的 HTML 部分:

<div>
  <h1>Grid 1</h1>
  <table id="Grid1"/>
</div>

<div>
  <h1>Grid 2</h1>
  <table id="Grid2"/>
</div>

<div>
  <h1>Grid 3</h1>
  <table id="Grid3"/>
</div>

您可以在下面的 sn-p 中试用 JavaScript 的完整代码。 以下是页面的外观:

我希望它会像

一样出现

标题 1
网格1
标题 2
网格2
标题 3
网格3

但没有像上面的屏幕截图那样混淆。我也尝试了&lt;span&gt;,在网格之间插入&lt;br/&gt;,添加带有高度属性的style属性,都没有成功。

如何解决这个问题?请帮忙。

代码 sn-p 试试看:

// see: https://free-jqgrid.github.io/getting-started/
// CDN used: https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid
$(function() {
  var gridSampleData = [
      { id: 10, firstName: "Jane", lastName: "Doe1"},
      { id: 20, firstName: "Justin", lastName: "Time" }
    ];
  $("#Grid1").jqGrid({
    autowidth: true, height: 45, 
    colModel: [{name: "firstName"}, {name: "lastName"}],
    data: gridSampleData
  });
  $("#Grid2").jqGrid({
    autowidth: true, height: 45, 
    colModel: [{name: "firstName"}, {name: "lastName"}],
    data: gridSampleData
  });
  $("#Grid3").jqGrid({
    autowidth: true, height: 45, 
    colModel: [{name: "firstName"}, {name: "lastName"}],
    data: gridSampleData
  });
});
<meta charset="utf-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<title>Canonical jqGrid example</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/themes/redmond/jquery-ui.min.css"/>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.15.2/css/ui.jqgrid.min.css"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.15.2/jquery.jqgrid.min.js"></script>

    <div>
      <h1>Grid 1</h1>
      <table id="Grid1"/>
    </div>

    <div>
      <h1>Grid 2</h1>
      <table id="Grid2"/>
    </div>

    <div>
      <h1>Grid 3</h1>
      <table id="Grid3"/>
    </div>

【问题讨论】:

    标签: javascript jquery html css jqgrid


    【解决方案1】:

    如果您只是希望它们位于正确的位置? 这是答案,但如果您想在下面发表其他评论并告诉我。

       $(function() {
          var gridSampleData = [
              { id: 10, firstName: "Jane", lastName: "Doe1"},
              { id: 20, firstName: "Justin", lastName: "Time" }
            ];
          $(".any1").jqGrid({
            autowidth: true, height: 45, 
            colModel: [{name: "firstName"}, {name: "lastName"}],
            data: gridSampleData
          });
           $(".any2").jqGrid({
            autowidth: true, height: 45, 
            colModel: [{name: "firstName"}, {name: "lastName"}],
            data: gridSampleData
          });
           $(".any3").jqGrid({
            autowidth: true, height: 45, 
            colModel: [{name: "firstName"}, {name: "lastName"}],
            data: gridSampleData
          });
        });
        <meta charset="utf-8"/>
        <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
        <title>Canonical jqGrid example</title>
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/themes/redmond/jquery-ui.min.css"/>
        <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.15.2/css/ui.jqgrid.min.css"/>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/free-jqgrid/4.15.2/jquery.jqgrid.min.js"></script>
    
            <div class"awain">
              <h1>Grid 1</h1>
              <table class="any1"> </table>
            </div>
    <br>
          
        <div class"awain">
              <h1>Grid 2</h1>
              <table class="any2"> </table>
            </div>
    <br>
    
    <div class"awain">
              <h1>Grid 3</h1>
              <table class="any3"> </table>
            </div>
    <br>
       

    【讨论】:

      【解决方案2】:

      您的 html 表格定义不正确。表格的结束标记被解释为结束 div 标记 - 纠正问题修复您的 html,如下所示:

      <div>
        <h1>Grid 1</h1>
        <table id="Grid1"></table>
      </div>
      
      <div>
        <h1>Grid 2</h1>
        <table id="Grid2"></table>
      </div>
      
      <div>
        <h1>Grid 3</h1>
        <table id="Grid3"></table>
      </div>
      

      享受

      【讨论】:

      • 谢谢,确实有帮助!我认为/&gt; 标签会关闭&lt;table ... /&gt; 中的表格,因为它不包含任何数据,但看起来,HTML 中并不总是允许使用该快捷方式。
      • 谢谢。很高兴能提供帮助。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多