简体   繁体   English

通过JQuery .load调用用PHP加载html表

[英]Loading a html table with PHP via a JQuery .load call

Aim 目标

I am trying to create a page to delete records from my database.The page would consists of a that populates itself upon page load.Upon selecting a value from the and clicking the submit button, a php page would be called and the results of the php would be loaded into a table below the .I can then click on the delete button that would be beside the values echoed to delete that value from the database 我正在尝试创建一个页面以从数据库中删除记录。该页面将包含一个在页面加载时自动填充的页面。从中选择一个值并单击Submit按钮后,将调用一个php页面,并返回结果将php加载到。下面的表格中。然后,我可以单击回显值旁边的删除按钮,以从数据库中删除该值。

My Form: 我的表格:

<!DOCTYPE HTML>
<html>
<head>
<!--Loads JQuery script-->
<script src="//code.jquery.com/jquery-1.9.1.js"></script>
<!--Gets list of item categories on page load-->
<script type="text/javascript">
$(document).ready(function(){
    $("#viewsubcat").load("getcategory.php");
});
</script>
<script type="text/javascript">
$("#viewsubcatsubmit").click(function(){
    var cat=$('#viewsubcat').val();
    $('#deletetable').load('delsubcategory.php?cat='+cat);
});
</script>
</head>
<body>

<form style="width:500px" id="viewsubcategory" name="viewsubcategory" method="post" action="<? php echo $_SERVER['PHP_SELF'] ?>" >
    <div class="inputfield">
        <label for="viewsubcat">Select Category:</label>
        <select style="margin-left:37px" id="viewsubcat" name="viewsubcat"></select>
    </div><br />

    <div class="inputfield">
        <input style="margin-left:250px" type="button" id="viewsubcatsubmit" name="viewsubcatsubmit" value="Search" /></div>
    </div><br />
</form>

<table id="deletetable">
</table>

</body>
</html>

PHP Page: PHP页面:

<?php
    include("cxn.inc");
    $id=$_SESSION['BizID'];
    $cat=$_GET['cat'];
    $viewsubcat=$cxn->prepare("SELECT * FROM `itemcat`,`itemsubcat` 
    WHERE `itemcat`.`CatID`=:cat AND `itemsubcat`.`ItemCat`=:cat AND `itemsubcat`.`BusinessID`=:id");
    $viewsubcat->bindValue(":cat",$cat);
    $viewsubcat->bindValue(":id",$id);
    $viewsubcat->execute();
    //echo"<table border='1'>";
    echo"<tr>";
            echo"<td>";
                echo"Categories";
            echo"</td>";
            echo"<td>";
                echo"SubCategories";
            echo"</td>";
            echo"<td>";
                echo"Action";
            echo"</td>";
        echo"</tr>";
    while($getsubcat=$viewsubcat->fetch(PDO::FETCH_ASSOC))
    {
        $cat=$getsubcat['ItemCat'];
        $subcat=$getsubcat['ItemSubCat'];
        $subcatid=$getsubcat['SubCatID'];
        echo"<tr>";
            echo"<td>";
                echo"$cat";
            echo"</td>";
            echo"<td>";
                echo"$subcat";
            echo"</td>";
            echo"<td>";
                echo"<form id='delsubcategory' name='delsubcategory' method='POST' action='delsubcategory.php'>";
                    echo"<input type='hidden' id='delsubcatid' name='delsubcatid' value='$subcatid' />";
                    echo"<input type='submit' id='delsubcatsubmit' name='delsubcatsubmit' value='Delete' />";
                echo"</form>";
            echo"</td>";
        echo"</tr>";
    }
    //echo"</table>";
?>

Problem: 问题:

The HTML Table isn't loading upon pressing the button.The Php page is working when i change the form's action to "delsubcategory.php" and the button type="submit", so the issue lies with the html. 按下按钮后,HTML表未加载。当我将表单的操作更改为“ delsubcategory.php”并且按钮类型为“ submit”时,Php页面正在工作,因此问题出在html。

Would appreciate any insights into the matter 希望对此事有任何见解

You forget to wrap your button click event handler into $(function(){ }); 您忘记将按钮单击事件处理程序包装到$(function(){ });

<script type="text/javascript">
$(function(){
$("#viewsubcatsubmit").click(function(){
    var cat=$('#viewsubcat').val();
    $('#deletetable').load('delsubcategory.php?cat='+cat);
});
});
</script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM