My js code:
jQuery(document).ready(function($) {
// $(document).on('click','.contact',function() {
$(document).on('click','.test',function() {
//$('.test').click(function(e){
// evt.preventDefault();
//$('div').hide();
var cat = '-10';
var data = {
'action': 'my_action',
'category': cat
};
jQuery.post(ajax_object.ajax_url, data, function(response) {
console.log('Got this from the server: ' + response);
});
});
});
和我的PHP代码
function my_action_callback() {
global $wpdb;
if (isset($_POST["category"])) {
$category = $_POST["category"];
}
echo $category;
wp_die();
}
所以问题来了:我正在尝试在 Wordpress 中建立一个网站,我正在尝试传递我希望从帖子中排除的类别。
.test 是一个提交按钮,带有指向我的帖子页面的 URL。当我单击它时,我没有得到服务器的响应,ajax 根本不起作用。
但是当我单击 .contact 时,它只是一个不会重定向到任何页面的div,我的代码工作正常,我得到"从服务器得到这个:-10"响应;
我也尝试过 preventDefault()。在这种情况下,我得到了正确的响应,但没有重定向到所需的页面。
我的猜测是它与重定向到另一个页面有关。
任何帮助都会非常好。
使用 preventDefault 阻止点击,然后如果你想重定向,那么使用 window.location 让你进入下一页
这是我的答案
jQuery(document).ready(function($) {
$(document).on('click','.test',function(e) {
e.preventDefault();
var cat = '-10';
var data = {
'action': 'my_action',
'category': cat
};
jQuery.post(ajax_object.ajax_url, data, function(response) {
console.log('Got this from the server: ' + response);
window.location = $(this).attr('href');
});
});
});