我一直在关注位于https://www.codeofaninja.com/2015/06/php-crud-with-ajax-and-oop.html的CRUD教程。 我可以创建更新和删除,但是当ajax成功触发时,我收到一个错误:
showProducts()未定义
因此产品列表不会刷新。我不明白如果没有某种类型的引用就可以找到showProducts()
。我知道showProducts()
有效,因为它是在$(document).ready(function()
{
// show list of product on first load
showProducts();
});
works fine.
// send delete request to api / remote server
$.ajax({
url: "http://localhost/api/product/delete.php",
type : "POST",
dataType : 'json',
data : JSON.stringify({ id: product_id }),
success : function(result) {
// re-load list of products
showProducts();
},
error: function(xhr, resp, text) {
console.log(xhr, resp, text);
}
});
}
答案 0 :(得分:0)
您缺少来自6.3的代码:
// function to show list of products
function showProducts(){
}
但是,稍后(在11.4中)他们将其改为:
// function to show list of products
function showProducts(){
// get list of products from the API
$.getJSON("http://localhost/api/product/read.php", function(data){
// html for listing products
readProductsTemplate(data, "");
// chage page title
changePageTitle("Read Products");
});
}
答案 1 :(得分:0)
因为您的showProducts()
函数未定义
只需在你的($ ajax调用)之前创建一个并在其中添加一些数据,例如:
// function to show list of products
function showProducts(){
// you can change those contents and add whatever you like.
$(document).ready(function() {
$("#emptydiv").html("<body> Add your prodects here </body>");
});
}
您希望将数据放入的html div:
<div id="emptydiv"> </div>
我们在此处添加的内容( showProducts 功能)仅为示例。你可以添加你想要的东西(依赖,如果你想完全按照教程或你想添加你的欧文风格和内容)。
并在教程链接中提及,他们会添加这些内容:
// function to show list of products
function showProducts(){
// get list of products from the API
$.getJSON("http://localhost/api/product/read.php", function(data){
// html for listing products
readProductsTemplate(data, "");
// chage page title
changePageTitle("Read Products");
});
}