This is what it looks like on my page to give you a better visual.这正确地将数据保存到数据库中。它保留在页面上,并没有根据需要刷新。 我遇到的唯一问题是我尝试两次保存信息的时候。第一次保存后,除非我实际点击页面刷新按钮,否则不会保存到数据库。
例如:我会更改项目的名称并单击“保存”按钮。新标题已正确上载到数据库。我可能会意识到我的标题中有错误并在修复后再次保存,但新的更改将无法保存。
<script type="application/javascript">
$(function() {
//declaration
var success = $("#success");
//if the save button is pressed
$(".saveitem_form").submit(function(e){
success.text("Saving.....");
//$("#success").load('admin_editprices.php #success');
var dataString = $(this).serialize();
var action = $(this).attr('action');
$.ajax({
type: "POST",
url: action,
data: dataString,
success: finish
});
$('.allproducts').load('admin_editprices.php .allproducts');
e.preventDefault();
return false;
});
//if the ajax function was a success
function finish() {
success.text("Saved.");
}
});
</script>
答案 0 :(得分:0)
将$('.allproducts').load('admin_editprices.php .allproducts');
放入success
函数以在ajax操作完成后刷新数据
我甚至建议将其移至单独的功能,如
function loadProducts() {
$('.allproducts').load('admin_editprices.php .allproducts');
}
function finish() {
success.text("Saved.");
loadProducts();
}
但是,jQuery Load函数可以缓存结果,因此如果在完成ajax更新并更改数据库值后没有看到任何更改,则可能需要更改loadProducts函数以使用ajax
而不是{{1 }}
load