我有一个成功的CRUD CMS使用AJAX工作......也就是说,直到我添加了点击ajax事件的分页(我将在下面分享这个脚本)。
+ -----------------------------新----- -----编辑重复---- - 删除----- +
| --- + --------- + ---------------- + ------------------ -------------------------------- |
| O | 。标题 | 说明 | .................................................. .......... |
| --- + --------- + ---------------- + ------------------ -------------------------------- |
| O |第1项|布拉赫。 | .................................................. .......... |
| --- + --------- + ---------------- + ------------------ -------------------------------- |
| O |第2项|布拉赫。 | .................................................. .......... |
| --- + --------- + ---------------- + ------------------ -------------------------------- |
| O |第3项|布拉赫。 | .................................................. .......... |
| --- + --------- + ---------------- + ------------------ -------------------------------- |
点击按钮edit/duplicate/delete
时...
1。用户收到确认提示“你确定......?”
2。所选复选框通过ajax发送到相应的href [.php]
进行操作。
3。页面刷新
function actionButton () {
if($(this+' span').hasClass("dead")) { }else{
page = $(this).attr("href");
ids = new Array()
a = 0;
$(".chk:checked").each(function(){
ids[a] = $(this).val();
a++;
})
if (confirm("Are you sure you want to affect the selected record(s)?")) {
$.ajax({
url : page,
type : "POST",
data : "id="+ids,
cache : false,
dataType : 'json'
}) // end AJAX
.done(function(data) {
window.console.log(data); // log data to the console so we can see
// Handle ERRORS
// After form submission, redirect a user
// to another page
window.location.reload();
})
.fail(function(data) { // promise callback
window.console.log(data); // show any errors in console
});
} // end CONFIRMed
return false;
};
};
$(document).ready(function() {
$('#btn_del').click(actionButton); // DELETE record(s) button
$('#btn_pub').click(actionButton); // PUBLISH record(s) button
$('#btn_unpub').click(actionButton); // UNPUBLISH record(s) button
$('#btn_dup').click(actionButton); // DUPLICATE record(s) button
// ----------------------------------
// This feature is currently configured
// to only allow duplication of
// one(1) x record at a time
// The configurations above disable
// the DUPLICATE button when more
// than one(1) record is checked
});
我添加了一个ajax点击分页管理器,用id=pagination
填充$('#pagination').html(response);
...这个分页正如我所希望的那样有效。
+ -----------------------------新----- -----编辑重复---- - 删除----- +
| --- + --------- + ---------------- + ------------------ -------------------------------- |
| ....< 1 2 3 4 5> .................................................. ....................... |
| O | 。标题 | 说明 | .................................................. .......... |
| --- + --------- + ---------------- + ------------------ -------------------------------- |
| O |第1项|布拉赫。 | .................................................. .......... |
$(function(){
$.ajax({
url : "populateRecordsPaginate.php",
type : "POST",
data : "actionfunction=showData&page=1",
cache : false,
success : function(response){
$('#pagination').html(response);
}
});
$('#pagination').on('click','.page-numbers',function(){
$page = $(this).attr('href');
$pageind = $page.indexOf('page=');
$page = $page.substring(($pageind+5));
$.ajax({
url : "populateRecordsPaginate.php",
type : "POST",
data : "actionfunction=showData&page="+$page,
cache : false,
success : function(response){
$('#pagination').html(response);
}
});
return false;
});
});
自从添加pagination.js后,现在......
pagination links
中的任何一个,按钮操作就会像以前一样正常工作。如果我 DO 点击pagination links
中的任何一个,则按钮操作的行为会有所不同:
confirm alert
碰巧重复一次,两次,有时三次答案 0 :(得分:2)
在stackoverflow的帮助下找到它。
我发现我只需要将e.stopImmediatePropagation()
添加到actionButton函数的开头。这似乎很好地解决了这个问题。
function actionButton (e) {
e.stopImmediatePropagation();