当前位置: 首页 > 面试题库 >

为什么我的Ajax请求得到响应0?

毋树
2023-03-14
问题内容

我在wp主题中设置了基本的wordpress ajax示例。触发是由modernizr.js检查页面上的媒体查询来完成的。

jQuery(document).ready(function($) {
    if(Modernizr.mq('only all and (max-width:6300px)')) {
        var data = {
        action: 'my_action',
        whatever: ajax_object.we_value      // We pass php values differently!
    };
    // We can also pass the url value separately from ajaxurl for front end AJAX implementations
        jQuery.post(ajax_object.ajax_url, data, function(data) {
            $("#trending-Container").html(data).fadeIn(1000);
        });
    }

});//end function

我已经本地化了脚本并使其入队。

wp_enqueue_script('mainJS', get_template_directory_uri() . '/js/mainJS.js', array("jquery") );
wp_localize_script( 'mainJS', 'ajax_object', 
                    array( 'ajax_url' => admin_url( 'admin-ajax.php' ), 'we_value' => 1234 ) );

最后处理请求的函数是:

add_action('wp_ajax_my_action', 'my_action_callback');
add_action('wp_ajax_nopriv_my_action', 'my_action_callback');
function my_action_callback() {
        global $wpdb;
            $whatever = intval( $_POST['whatever'] );
            $whatever += 10;
                echo $whatever;
            die();

        }

这总是使我的响应为0(无属性),我也不知道为什么。PS这都是本地的。

Status code 200
Host:lart.co.uk
Origin:http://lart.co.uk
Referer:http://lart.co.uk/
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/28.0.1500.71 Chrome/28.0.1500.71 Safari/537.36
X-Requested-With:XMLHttpRequest
Form Dataview sourceview URL encoded
action:my_action
whatever:1234

问题答案:

一切都必须在这里匹配:

PHP

add_action('wp_ajax_ **my_action** ',' **my_action** ');
add_action('wp_ajax_nopriv_ **my_action** ',' **my_action** ');

函数 **my_action** (){}

JS

var data = {
    动作:“ **my_action** ”,
    任何:ajax_object.we_value 
};


 类似资料:
  • 我正在尝试在不修改后端的情况下对旧网站表单进行AJAXify。最初,后端会在收到表单后用“302移动”重定向到“谢谢”页面进行响应。 现在,当我尝试使用jQuery$提交表单时。ajax调用时,表单数据被成功提交,但“302 Moved”重定向似乎被浏览器取消,jQuery不知道发生了什么。 我的问题是,不管发生什么,美元。ajax调用返回一个错误,状态为0,因此我无法区分成功提交和错误。 有没有

  • 前段时间,我设置了一个带有一些子域的站点(,...) 为什么辅助DNS没有给出子域的答案?它给出了像“test.example.com”这样的旧子域的答案。我必须如何解释SOA响应?什么意思?

  • 问题内容: 08 nov 608 nov 5 08 nov 4 08 nov 308 nov 1 08 nov 2 为什么我得到: HTTP request Response Assertion:Test failed:text expected to contain /302/” error in “Assertion Results” 问题答案: 这是因为您没有在断言中检入正确的“要测试的字段

  • 主要活动 公共类MainActivity扩展AppCompatActivity{String response; 公共类GetExample{OkHttpClient客户端; Xml文件

  • 我在Spring启动时使用webClient提出请求,这里是上面的请求: 我的问题是如何在执行另一条指令之前等待请求的结果

  • 问题内容: public class Category { 在正在生成。 问题答案: 当您执行时,您称呼孩子们的。这里没有问题,只不过您在这里调用了父对象。这将称呼孩子,等等。 不错的无限循环。 摆脱它的最好方法是将您的方法更改为: 这样,您将不打印parentCategory,而仅显示其名称,不显示无限循环,不显示StackOverflowError。 编辑: 正如博洛在下面说的那样,您将需要检