【问题标题】:Using Ajax for display data from database使用 Ajax 显示数据库中的数据
【发布时间】:2016-02-17 04:54:29
【问题描述】:

我已经从互联网或本论坛的其他问题中学习了,但仍然感到困惑并且此代码仍然无法正常工作。

我尝试通过组合框菜单 (1-7) 使用 onChange 显示数据,如果 0 将为空

此代码为html&javascript

<html>
    <head>
        <script src="jquery-1.9.1.js"></script>
    </head>
    <script type="text/javascript">
    $(document).ready(function() {
        $('#menu').change(function(){
            if($(this).val != 0){
                var menu_id = $(this).val();
                $.ajax({
                    type:       "GET",
                    url:        "menu.php",
                    menu_id :   menu_id,
                    dataType:   "html",
                    success: function(response){
                        $("#data-menu").html(response);
                    }
                });
            }
        }).change();
    )};
    </script>

<body>
    <table>
        <tr>
            <td>Menu</td>
            <td>
                <select name="menu" id="menu">
                    <option value="0" selected='selected'>Select Menu </option>
                    <option value="1">Menu - 1 </option>
                    <option value="2">Menu - 2 </option>
                    <option value="3">Menu - 3 </option>
                    <option value="4">Menu - 4 </option>
                    <option value="5">Menu - 5 </option>
                    <option value="6">Menu - 6 </option>
                    <option value="7">Menu - 7 </option>    
                </select>   
            </td>   
        </tr>
    </table>    
    <div id="data-menu" align="center">
        <!-- Show Data In Here -->
    </div>
</body>

这用于 menu.php

<?php
$connection=mysql_connect("localhost","root","");
if(!$connection)
    die('Cant connect !! '. mysql_error());

mysql_select_db("BK",$connection);
$menu_id= $_GET['menu_id'];

$result=mysql_query("select * from show_product where menu = '" . $menu_id . "' order by show_product_id",$connection);

$no = 0; // for number

echo "<table border='1' >
    <tr>
        <td>Menu :</td>
        <td>".$menu_id."</td>
    </tr>
    <tr>
        <td>No</td>
        <td>Head Text</td>
        <td>Title Text</td>
        <td>Max Item</td>
        <td>Date</td>
        <td>Status</td>
    </tr>";

while($data = mysql_fetch_row($result))
{   
    echo "<tr>";
    $no+=1;
    echo "<td>".$no."</td>";                                    //no
    echo "<td>".$data["head_text"]."</td>";                 //head
    echo "<td>".$data["title_text"]."</td>";                    //title
    echo "<td>".$data["max_item"]."</td>";                      //max item
    echo "<td>".$data["date_added"]."</td>";                    //date
    echo "<td>".'<a href = "Edit_menu.php?id_menu='.$data["show_product_id"].'">EDIT</a>'."</td>";  // EDIT
    echo "</tr>";
}
echo "</table>";
?>

【问题讨论】:

标签: javascript php html mysql ajax


【解决方案1】:

要通过ajax 发送数据,请使用data 键入ajax configdata 应保持object

要通过php 访问此数据,object 的用户key

试试这个:

$(document).ready(function() {
  $('#menu').change(function() {
    if ($(this).val != 0) {
      var menu_id = $(this).val();
      $.ajax({
        type: "GET",
        url: "menu.php",
        data: {
          menu_id: menu_id
        },
        dataType: "html",
        success: function(response) {
          $("#data-menu").html(response);
        }
      });
    }
  }).change();
});

menu_id 可以访问为$_GET['menu_id']

Fiddle here

【讨论】:

  • 当我尝试更改菜单(1-7)时,不显示任何内容??
猜你喜欢
  • 2012-09-01
  • 2014-01-30
  • 1970-01-01
  • 2019-04-21
  • 2016-02-21
  • 2019-02-01
  • 2015-10-02
  • 1970-01-01
  • 2013-06-08
相关资源
最近更新 更多