javascript - Bootstrap 表 - 行中的动态按钮

标签 javascript html twitter-bootstrap-3 html-table

我正在使用 bootstrap v3。我尝试获得如图中的效果。我想要一个按钮,在 popup 中显示什么 "Item Name"。但是我的按钮没有显示。

问题是我的表的这种性质是动态的(形式 JSON)——这让事情变得很困难。

图片: enter image description here

var $table = $('#table');
var mydata = [{
    "id": 0,
    "name": "test0",
    "price": "$0"
  },
  {
    "id": 1,
    "name": "test1",
    "price": "$1"
  },
  {
    "id": 2,
    "name": "test2",
    "price": "$2"
  }
];

$(function() {
  $('#table').bootstrapTable({
    data: mydata
  });
});
<html>

<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.min.css">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.10.1/bootstrap-table.min.css">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
  <script src="https://cdnjs.cloudflarenter code heree.com/ajax/libs/bootstrap-table/1.10.1/bootstrap-table.min.js"></script>
</head>

<body>
  <div class="container">
    <table id="table" data-search="true">
      <thead>
        <tr>
          <th data-field="id" data-sortable="true">Item ID</th>
          <th data-field="name" data-sortable="true">Item Name</th>
          <th data-field="price" data-sortable="true">Item Price</th>
          <th>Show Name</th>
        </tr>
      </thead>
      <tbody>
        <tr></tr>
        <tr></tr>
        <tr></tr>
        <tr>
          <td>
            <button type="button" class="btn btn-primary btn-sm">Small button</button>
          </td>
        </tr>
      </tbody>
    </table>
  </div>
</body>

</html>

我会很感激你的帮助。

最佳答案

希望这有帮助..

    <html>

<head>
  <meta charset="utf-8">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.min.css">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.10.1/bootstrap-table.min.css">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.min.js"></script>
  <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-table/1.10.1/bootstrap-table.min.js"></script>
</head>

<body>
  <div class="container">
    <table id="table" data-search="true">
      <thead>
        <tr>
          <th data-field="id" data-sortable="true">Item ID</th>
          <th data-field="name" data-sortable="true">Item Name</th>
          <th data-field="price" data-sortable="true">Item Price</th>
          <th>Show Name</th>
        </tr>
      </thead>
      <tbody>

      </tbody>
    </table>
  </div>

    <!-- Modal -->
    <div id="myModal" class="modal fade" role="dialog">
      <div class="modal-dialog">

        <!-- Modal content-->
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">&times;</button>
            <h4 class="modal-title"></h4>
          </div>
          <div class="modal-body">
            <p></p>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
          </div>
        </div>

      </div>
    </div>


    <script>


            var $table = $('#table');
            var mydata = [{
                "id": 0,
                "name": "test0",
                "price": "$0"
              },
              {
                "id": 1,
                "name": "test1",
                "price": "$1"
              },
              {
                "id": 2,
                "name": "test2",
                "price": "$2"
              }
            ];

            $(function() {
              $('#table').bootstrapTable({
                data: mydata,
                columns: [ {},{},{},  
                {
                  field: 'operate',
                  title: 'Edit',
                  align: 'center',
                  valign: 'middle',
                  clickToSelect: false,
                  formatter : function(value,row,index) {
                    //return '<input name="elementname"  value="'+value+'"/>';
                    return '<button class=\'btn btn-primary \' pageName="'+row.name+'" pageDetails="'+row.price+'"  >Edit</button> ';
                  }
                }
              ]               
              });


            $(".btn").click(function(){
                var pageDetails = $(this).attr('pageDetails');
                var pageName = $(this).attr('pageName');
                $(".modal .modal-title").html(pageName);
                $(".modal .modal-body").html(pageDetails);
                $(".modal").modal("show");

            });

            });




    </script>




</body>

</html>

关于javascript - Bootstrap 表 - 行中的动态按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46516001/

相关文章:

javascript - 使用javascript在同一位置的多个 Canvas

html - 图像 <a> 垂直和水平居中对齐并在两者中都使用 % 调整大小

javascript - RxJs 将对象数组移动到根数组

javascript - 刷新后需要一个事件的子菜单(jquery Accordion 菜单)

javascript - JQuery 和 CSS 之间的实时编辑桥梁

html - 突出显示 anchor 元素时分配背景颜色的问题

javascript - 绑定(bind)列表的 css column-count 属性以响应地 Bootstrap 网格类

html - Bootstrap 中的 .row 类是如何定义的?

javascript - Angular + RequireJS 应用程序给出错误 "mainController not a function"

javascript - 我可以从 reduce 函数中的属性名称中删除空格吗?