【问题标题】:How to get id from mysql to modal?如何从mysql获取id到modal?
【发布时间】:2016-02-03 08:55:39
【问题描述】:

我在将 id 从 mysql 表获取到模态时遇到问题。 我得到了一个包含来自 mysql 表的数据的数据表。我放了一个“更新”按钮来编辑数据。更新按钮在同一页面中打开模式。按钮代码是;

<a data-toggle='modal' class='btn btn-success btn-setting' href='#myModal1'>UPDATE</a>

它完美地工作并且很好地打开了模态。但问题从那里开始。 我需要将 id 定位并发布到模态内容。为此,我必须做类似**href='something.php?id={id}'**

我有href='#myModal1'&gt;,所以我做不到。

我尝试了什么?

我试过**href='#myModal1?kid={$list["kid"]}'** 当我将鼠标悬停在按钮上时,我可以看到它正在获取 id,但是当我单击按钮时,模式没有打开。 我也试图搜索谷歌。我想很多人都在用我不知道的 javascript 来解决这个问题 :) 任何帮助都会很棒。谢谢 !

【问题讨论】:

  • 使用函数传递onclick 事件中的值。在函数中,用该值填充控件
  • 在你的模型 div 中尝试一个隐藏字段并设置 id 然后你也可以发帖?
  • 为锚标签添加新属性,data-id="update-id"。然后使用 jquery 获取它。

标签: javascript php mysql modal-dialog


【解决方案1】:

在 html 中添加数据属性,如下所示,我使用“data-exid”

<a data-toggle='modal' data-exid='[YOUR ID]' class='btn btn-success btn-setting' href='#myModal1'>UPDATE</a>

并尝试下面的模型框启动事件代码

jQuery('#myModal1').on('show.bs.modal', function(event) {
var button = jQuery(event.relatedTarget) // Button that triggered the modal
var exId = button.data('exid') // Extract info from data-* attributes
// If necessary, you could initiate an AJAX request here (and then do the updating in a callback).
// Update the modal's content. We'll use jQuery here, but you could use a data binding library or 0other methods instead.

/*Add this line in local*/
var modal = jQuery(this)
modal.find('#logId').val(-1)
modal.find('#logId').val(exId)});

这里的“#logId”是模型中隐藏框的id

【讨论】:

  • 不需要创建2个变量var button & var exId,可以像var exId = jQuery(event.relatedTarget).data('exid')这样用一个变量完成
【解决方案2】:

创建一个类(任何类名)。例如,我在 &lt;a&gt; 标签中创建了“UpdateButton”。 创建一个“data-OrderID”(或任何名称)。例如,我在 &lt;a&gt; 标签中创建了“data-OrderID”。在此属性中传递您的 ID 值。在下面的&lt;script&gt; 标签中使用。

<a href='#myModal1' class='btn btn-success btn-setting UpdateButton' data-OrderID="<?echo $YourIdHere;?>"  data-toggle='modal'>
    UPDATE
</a>

现在,在&lt;script&gt; 标签中,我使用“UpdateButton”类来调用模态。并且,'data-OrderID' 将值传递给something.php 页面

<script>
    $('.UpdateButton').click(function(){
        var Id=$(this).attr('data-OrderID');
        $.ajax({url:"something.php?Id="+Id,cache:false,success:function(result){
            $(".modal-content").html(result);
        }});
    });
</script>

something.php(模态)

<?
echo $Id = $_GET['Id'];
?>

它对我有用。也希望你。

查看Here 了解更多信息。

【讨论】:

  • 我会说最好使用.data() 而不是.attr(),如果您仍然使用.attr()data-attribute 的目的就会消失,所以这个var Id=$(this).data('OrderID'); 更好
  • 尝试了您解释的所有方法。仍然没有运气。我认为我做错了什么:/
  • 嗨@Fxx。我已经回答了很多这类问题。甚至,这个问题是我最喜欢的。我很震惊,为什么它不起作用。但是,不幸的是,这段代码对你没有帮助。真的很抱歉。
  • 我以不同的方式找到了解决方案@Nana Partykar。它现在工作得很好。感谢您尝试提供帮助!干杯。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-02-19
  • 1970-01-01
  • 2015-03-30
  • 1970-01-01
  • 2012-01-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多