动态值从PHP页面解析为Popup Model Box

时间:2015-06-01 07:20:31

标签: javascript php mysql

我试图将while循环中的php数据值解析为弹出模型。

示例代码

<?php
include("connect.php");

$sql = 'SELECT id FROM products WHERE tag="mixed" ORDER BY id DESC LIMIT 5';

mysql_select_db('levels');
$retval = mysql_query( $sql, $db_server );
if(! $retval )
{
  die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
  $id = $row['id'];

  ?>

<div onclick="showDialog('#dialog6');show_data();">

  <div id="getid">
    <?php echo $id; ?>
  </div>

</div>

<?php
}
mysql_close($db_server);
?>


<script>
    function showDialog(id){
        var dialog = $(id).data('dialog');
        dialog.open();
    }

    function show_data(){
      var x = document.getElementById("getid").innerHTML;
      document.getElementById("demo").innerHTML = x;
}
</script>

<!-- Popup Model -->
<div data-role="dialog" id="dialog6" >
 <div id="demo"> </div>

</div>

如果我有id =&gt; 1到10,上面的代码写了表中的最后5项。这是6 7 8 9 10。 (它工作得很好。)

我的要求是当我点击7它应解析7到弹出模型。 (或者让我们对innerHTML说。)

它只解析第一个值(5)。单击每个数字时的所有onclick事件。

PS:这是使用mysql测试而不是mysqli或pdo :)。

提前致谢!

1 个答案:

答案 0 :(得分:1)

试试这个。希望能帮助到你。     

    $sql = 'SELECT id FROM products WHERE tag="mixed" ORDER BY id DESC LIMIT 5';

    mysql_select_db('levels');
    $retval = mysql_query( $sql, $db_server );
    if(! $retval )
    {
      die('Could not get data: ' . mysql_error());
    }
    while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
    {
      $id = $row['id'];

      ?>

    <div onclick="showDialog('#dialog6');show_data(<?php echo $id; ?>);"> <!-- Changed -->

      <div id="getid<?php echo $id; ?>"> <!-- Changed -->
        <?php echo $id; ?>
      </div>

    </div>

    <?php
    }
    mysql_close($db_server);
?>


<script>
    function showDialog(id){
       var dialog = $(id).data('dialog');
       dialog.open();
    }

    function show_data(y){ // Changed
     var x = document.getElementById("getid"+y).innerHTML; // Changed
     document.getElementById("demo").innerHTML = x;
}
</script>

<!-- Popup Model -->
<div data-role="dialog" id="dialog6" >
 <div id="demo"> </div>

</div>