【问题标题】:pass data-id to bootstrap modal将 data-id 传递给引导模式
【发布时间】:2016-01-01 16:19:15
【问题描述】:

我在使用引导模式显示 data-id 时遇到问题。这是我的脚本

 <a class="btn btn-warning btn-minier" href="#modal-form-edit" role="button" data-toggle="modal" data-id="<?php echo $row['product_names']; ?>"><i class="icon-edit bigger-120"></i> Edit</a> &nbsp;

模态

<div id="modal-form-edit" class="modal hide" tabindex="-1">
<div class="modal-header">
    <button type="button" class="close" data-dismiss="modal">&times;</button>
    <h4 class="blue bigger">Products</h4>
</div>

<div class="modal-body overflow-visible">
    <div class="row-fluid">

        <div class="vspace"></div>

        <div class="span7">
            <div class="control-group">
                <label class="control-label" for="form-field-username">Product Name</label>

                <div class="controls">
                    <input type="text" name="product_name" placeholder="Product Name" value="" id="product_name" /> 
                </div>
            </div>

JS

$('#modal-form-edit').on('show', function () {
    var product = $(this).data('id');
    $("#product_name").val($(this).data('product'));
})

问题是,data-id 没有显示值($row['product_names'])

当我改变时

var product = $(this).data(id)

var product = "test";

模态显示“测试”。任何帮助我将不胜感激

【问题讨论】:

    标签: javascript php jquery twitter-bootstrap


    【解决方案1】:

    你需要得到锚标签data-id而不是使用this之类的,

    var product = $('a[href="#modal-form-edit"]').data('id');
    

    已更新如果您有多个编辑链接,那么要获得点击的锚标记数据 ID,您应该使用 e.relatedTarget

    // using latest bootstrap so, show.bs.modal
    $('#modal-form-edit').on('show.bs.modal', function(e) {
      var product = $(e.relatedTarget).data('id');
      $("#product_name").val(product);
    });
    <link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.css" rel="stylesheet" />
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.js"></script>
    
    <a class="btn btn-warning btn-minier" href="#modal-form-edit" role="button" data-toggle="modal" data-id="Product 1"><i class="icon-edit bigger-120"></i> Edit</a> &nbsp;
    <a class="btn btn-warning btn-minier" href="#modal-form-edit" role="button" data-toggle="modal" data-id="Product 2"><i class="icon-edit bigger-120"></i> Edit</a> &nbsp;
    <div id="modal-form-edit" class="modal" tabindex="-1">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal">&times;</button>
        <h4 class="blue bigger">Products</h4>
      </div>
    
      <div class="modal-body overflow-visible">
        <div class="row-fluid">
    
          <div class="vspace"></div>
    
          <div class="span7">
            <div class="control-group">
              <label class="control-label" for="form-field-username">Product Name</label>
    
              <div class="controls">
                <input type="text" name="product_name" placeholder="Product Name" value="" id="product_name" />
              </div>
            </div>
          </div>
          <!--span7-->
        </div>
      </div>
      <!-- modal-body-->
    </div>

    【讨论】:

    • 谢谢,它运行良好。但是如果我有 3 个具有 3 个不同数据 ID 的编辑按钮呢?
    • 其实我不明白你想要什么?
    • 我的意思是,我把 data-id 放到
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-09
    • 2014-09-13
    • 1970-01-01
    • 2015-01-27
    • 2014-01-05
    • 2013-07-21
    相关资源
    最近更新 更多