0

我有一个表,其中有一列中的所有行都有锚链接。

相关代码是

<tbody>
  <?php foreach ($rowarr as $k => $v) { ?>
    <tr>
      <td><?php echo $k ?></td>
      <td>
        <div class="divBox">                          
          <a id="vendorlink" data-toggle="modal" data-vendor="<?= $v ?>" href="#myModal"><?php echo $v; ?></a>
        </div>
      </td>
    </tr>
  <?php } ?>
</tbody>

我正在尝试将供应商的名称从表中单击的链接发送到使用 AJAX 的模式,并尝试在模式中打印名称以进行测试,但即使这样也没有发生。

<script type="text/javascript">
  $('#myModal').modal('hide');
  $("#vendorlink").click(function(){
    var vendor = $(this).data('vendor');
    $('#myModal').on('shown', function(){                
        $.ajax({
          type: "GET",
          url: "ip.php",
          data:     "id=" + vendor,
          success: function(html){
            $("#modal-body").html(html);
            $('.countstable1').dataTable( {
              "sDom": "T<'row-fluid'<'span6'l><'span6'f>r>t<'row-fluid'<'span6'i><'span6'p>>",
              "sPaginationType": "bootstrap",
              "oLanguage": {
                "sLengthMenu": "_MENU_ records per page"
              },
              "aaSorting":[[0, "desc"]],
              "iDisplayLength": 10,
              "oTableTools": {
                    "sSwfPath": "swf/copy_csv_xls_pdf.swf",
                    "aButtons": ["csv", "pdf"]
                  }
            });
          }
      });              
    });
  });
</script>

而 ip.php 文件暂时只有这个

<?php

$vendor = $_GET['id'];

echo $vendor;
?>

但是在模态中,我只看到默认的引导标记代码,没有任何回显

这是默认的引导标记代码 - http://twitter.github.com/bootstrap/javascript.html#modals

有什么问题?为什么供应商不传递给 PHP 文件?

4

2 回答 2

1

您为 html 文件中的所有链接设置了相同的 id,这将无法按您的意愿工作,您最好为所有链接添加一个事件。

于 2012-08-09T22:31:12.127 回答
0

data属性应该这样定义:

data: {id: vendor},

编辑。哦,替换:

<a id="vendorlink" data-toggle="modal" data-vendor="<?= $v ?>" href="#myModal"><?php echo $v; ?></a>

和:

<a id="vendorlink_<?=$v?>" class="vendorlink" data-toggle="modal" href="#myModal"><?=$v?></a>

$("#vendorlink")with $(".vendorlink")(所以你会影响所有的条目)和$(this).data('vendor');with $(this).attr('id').replace('vendorlink_', '');

于 2012-08-09T22:43:26.660 回答