如何将值传递给Bootstrap Modal的href链接?

时间:2019-01-12 20:46:16

标签: javascript jquery html twitter-bootstrap bootstrap-modal

我想清除某个表的值,所以我想使用Bootstrap模态获取表名。我想要网址中的表格名称。

这是我的代码: 在这里,我将表的名称发送到模式中

<ol class="breadcrumb text-center">
  <li class="breadcrumb-item">
     <a class="btn btn-primary" href="#scrapModal" data-toggle="modal" data-table="product1">Insert1</a>
     <a class="btn btn-primary" href="#scrapModal" data-toggle="modal" data-table="product2">Insert2</a>
     <a class="btn btn-primary" href="#scrapModal" data-toggle="modal" data-table="product3">Insert3</a>
     <a class="btn btn-primary" href="#scrapModal" data-toggle="modal" data-table="product4">Insert4</a>
</ol>

我想将数据表中的值作为 clear.php?clear_id =“ table_name”

传递给href
<div class="modal fade" id="scrapModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel1" aria-hidden="true">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="exampleModalLabel1">Confirm Clear?</h5>
        <button class="close" type="button" data-dismiss="modal" aria-label="Close">
          <span aria-hidden="true">×</span>
        </button>
      </div>
      <div class="modal-body">Are you sure you want to clear scrap for this table.</div>
      <div class="modal-footer">
        <button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
        <a class="btn btn-danger" href="clear.php?clear_id=">Clear</a>
      </div>
    </div>
  </div>
</div>

提前谢谢!

3 个答案:

答案 0 :(得分:4)

您可以利用href事件触发器并使用{{1}提供的具有shown.bs.modal属性的URL来动态更改模式中“清除”按钮的data-table值。事件对象中的{1}}属性。

我添加了一个清除按钮单击事件以从视觉上强调这一点。

relatedTarget
$('#scrapModal').on('show.bs.modal', function (e) {
  var table = $(e.relatedTarget).data('table')
  var href = 'clear.php?clear_id=' + table
  $('.btn-danger', this).attr('href', href)
  console.log(href)
})

// Simulate "clear" button click to alert href value
$('#scrapModal .btn-danger').on('click', function (e) {
  e.preventDefault()
  alert(e.target.pathname + e.target.search)
})

答案 1 :(得分:1)

在script标记内使用以下代码行,这应该可以正常工作。

$('#scrapModal .btn-danger').on('click', function (e) {
  e.preventDefault()
  alert(e.target.pathname + e.target.search)
})

答案 2 :(得分:0)

您可以使用以下简单脚本来做到这一点:

$('#scrapModal').on('show.bs.modal', function (event) {
  var table = $(event.relatedTarget).data('table');
  $(this).find('.btn-danger').attr("href", "clear.php?clear_id=" + table);
)}

这将在出现模态时运行。最好给Confirm Button一个id属性,以便以一种更加优雅的方式进行查找。

您可以在此处找到有关更改模式内容的更多信息:https://getbootstrap.com/docs/4.0/components/modal/#varying-modal-content