Ajax没有处理链接

时间:2016-03-11 10:57:19

标签: javascript php jquery ajax wordpress

我的js代码:

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是一个提交按钮,其中包含我的帖子页面的网址。当我点击它时,我得不到服务器的响应,而ajax根本不起作用。

但是当我点击.contact它只是一个没有重定向到任何页面的div时,我的代码工作正常,我从服务器得到了这个:-10'响应;

我也试过了preventDefault()。在这种情况下,我得到正确的响应,但没有重定向到所需的页面。

我的猜测是它与重定向到另一个页面有关。

任何帮助都会非常好。

1 个答案:

答案 0 :(得分:0)

使用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');
    });
  });  
});