我的函数仅适用于 ajax 调用后的警报
My function only works with an alert after my ajax call
我正在用数据库中的值填充一个表。我在可以删除的行中包含了一个删除图标。该图像具有onclick='deleteCat(id);'
属性,id 通过循环从 json 数组中获取,如下所示:
string = "<td align='center'><a href=''><img border='0' src='../images/Bullet-Delete.png' alt='delete' onclick='deleteCat("+json[i]['id']+");'/></a></td>";
这是我deleteCat
函数:
function deleteCat(id){
var dataString = "catId=" + id;
$.ajax({
type: "POST",
url: "../ajax/categorie_verwijderen.php",
data: dataString,
success: function(data) {
//$("#allecat").find("tr:gt(0)").remove();
//update_table();
}
});
//alert(id);
}
当我在 ajax 之后发出警报时,我的函数会起作用。表刷新,该行从我的数据库中删除。但是,当我删除警报时,我的函数不起作用,表被刷新,该行仍然存在于表和数据库中。
提前谢谢。
您需要阻止单击的默认事件 - 即每次单击图像时都会重新加载页面
function deleteCat(id){
var dataString = "catId=" + id;
$.ajax({
type: "POST",
url: "../ajax/categorie_verwijderen.php",
data: dataString,
success: function(data) {
$("#allecat").find("tr:gt(0)").remove();
update_table();
}
});
return false; // prevent the browser following the href
}
您还需要更改您的 html :
onclick='return deleteCat("+json[i]['id']+");
alert() 会有所帮助,因为这会延迟该函数中剩余 javascript 的处理。ajax 异步发送数据。async key 为 Default: true,应在调用中将其更改为 false,直到客户端等待 ajax 调用结束。例如:
$.ajax({
async:false,
url: "test.html",
.
.
});
相关文章:
- 阻止在select2单击时调用ajax
- 调用Ajax并返回响应
- Ajax:只在元素存在的情况下调用Ajax
- PHP,MySQL,AJAX-调用AJAX结果后,Bootstrap CSS样式不会显示
- 调用Ajax内部的函数
- 无法获取属性'的值;拆分'在IE8中调用ajax之后
- 我们如何在Firefox中调用AJAX
- Rails:通过调用Ajax重定向
- Cookie 在 Spotify (Javascript) 中调用 ajax 后未保存
- 通过调用 Ajax 来设置 struts bean 值
- 无法从服务器中的 php 调用 Ajax 函数
- 如何在附加表行时调用 ajax
- 在facebook用户发送邀请请求后调用ajax调用
- 定期调用Ajax
- 调用Ajax生成的表单的值
- 无法调用ajax函数
- 在调用AJAX之后显示ng控制器的内容;作为“;作用
- CSS,Java脚本在php中调用ajax后无法正常工作
- 成功调用AJAX后,Toast Growl不会出现
- 如何在调用AJAX时记录或捕获信息和错误