Ajax calls in wordpress

时间:2013-05-19 作者:Sankalp Mishra

我想在wordpress中发送一个ajax请求,跟踪我的点击。目前,我已将其添加到我的函数文件中:

add_action(\'init\', \'my_script_enqueuer\');

  function my_script_enqueuer() {
    wp_register_script("history_script", get_template_directory_uri() . \'/js/history_script.js\', array(\'jquery\'));
    wp_localize_script(\'history_script\', \'myAjax\', array(\'ajaxurl\' => get_template_directory_uri().\'/functions.php\'));
    wp_enqueue_script(\'jquery\');
    wp_enqueue_script(\'history_script\');
  }

  add_action("wp_ajax_history_trace", "history_trace");

  function history_trace() {
      echo \'fasfasgasgas\'; die;
}
在我的js文件中:

jQuery(document).ready( function() {

   jQuery("#searchsubmit").click( function() { 
      jQuery.ajax({
         type : "post",
         dataType : "json",
         url : myAjax.ajaxurl,
         data : {action: "history_trace"},
         success: function(response) {
            if(response.type == "success") {
               alert(\'success\')
            }
            else {
               alert("false")
            }
         }
      })   

   })

})
但当我看到我的控制台时,rquest显示为红色,没有响应。请帮忙!!

1 个回复
SO网友:Monirul Islam

我认为你的ajax url是错误的。ajax链接应该是admin\\u url(\'admin ajax.php\')。这意味着

wp_localize_script(\'history_script\', \'myAjax\', array(\'ajaxurl\' => get_template_directory_uri().\'/functions.php\'));
就是这个

wp_localize_script(\'history_script\', \'myAjax\', array(\'ajaxurl\' => admin_url( \'admin-ajax.php\' ));

结束

相关推荐

通过AJAX获取输入类型日期值

我是ajax新手,我已经为如何解决我的问题挣扎了三天。我试图获取日期输入的值(html中的输入类型=“date”),并将其传递给ajax(post方法),以便对其进行处理。我的目标是能够在用户使用html 5日期输入选择的特定日期范围内,更新通过post date过滤的多篇文章的特定post meta值。目前我只有一个更新所有帖子元值的按钮,但日期范围必须手动输入到代码中,我无法使其成为动态的,用户可以选择一个日期范围,如2013年4月1日至2013年5月1日之间更新帖子元值。我的工作ajax可以运行我的