WordPress的Ajax请求返回0(Wordpress ajax request return 0)

你好,我有一个WordPress的问题我无法获得ajax电话,我找不到原因。 我的查询一直返回0。

我的JavaScript代码:

updateButton.onclick = function(e){

var donne = {

'action': 'my_action',

'lodges': updateDeleteArray

};

$(function () {

$.ajax({

type: "POST",

data: donne,

url: ajaxurl,

contentType: "application/json",

dataType: 'json',

success: function (data) {

console.log(data);

},

});

});

};

我的php代码:

add_action('wp_ajax_my_action', 'my_action');

add_action('wp_ajax_nopriv_my_action', 'my_action');

function my_action() {

echo 'salut';

die();

}

Hello I have a problem with wordpress I can not get an ajax call and I can not find the reason. My query returns me all the time 0.

my javascript code :

updateButton.onclick = function (e) {

var donne = {

'action': 'my_action',

'lodges': updateDeleteArray

};

$(function () {

$.ajax({

type: "POST",

data: donne,

url: ajaxurl,

contentType: "application/json",

dataType: 'json',

success: function (data) {

console.log(data);

},

});

});

};

my php code :

add_action('wp_ajax_my_action', 'my_action');

add_action('wp_ajax_nopriv_my_action', 'my_action');

function my_action() {

echo 'salut';

die();

}

原文:https://stackoverflow.com/questions/43146923

更新时间:2020-01-13 21:11

最满意答案

尝试删除contentType和dataType ,因为您没有将JSON返回到您的函数中。

要么

像这样修改你的功能

function my_action() {

echo json_encode('salut');

die();

}

希望能帮助到你

Try deleting contentType and dataType, because you are not returning a JSON into your function.

Or

modify your function like this

function my_action() {

echo json_encode('salut');

die();

}

hope it helps

相关问答

最后,我只是自己想出了它。 只需在ajax调用中使用async: false 。 现在它工作正常。 Plus创建一个空变量并在其中存储布尔值,然后在ajax调用之后返回该变量。 这是我以前的代码: require 'nmp_process.php';

add_action('wp_ajax_nmp_process_ajax', 'nmp_process_func');

add_action('wp_ajax_nopriv_nmp_process_ajax', 'nmp_process_f

...

尝试制作POST类型的ajax请求 要么 否则尝试$ _REQUEST而不是$ _POST ,因为默认情况下,Request将是$ _GET类型,导致您的案例出现问题 I got the answer! It was a plugin: Role Scope. It put a restriction on taxonomies, I've uncheck the restriction on this particular taxo and now it works.

在echo语句后使用wp_die()。 以下是Codex的示例代码。 <?php

add_action( 'wp_ajax_my_action', 'my_action_callback' );

function my_action_callback() {

global $wpdb; // this is how you get access to the database

$whatever = intval( $_POST['whatever'] );

$w

...

添加die(); 或exit(); 到你的PHP函数的最后一行,你通过AJAX调用,以防止返回0 。 Add die(); or exit(); to a very last line of your PHP function which you call via AJAX to prevent returning 0.

根据文档http://codex.wordpress.org/AJAX_in_Plugins 你应该有类似的东西 echo $someValue

在wp_die()或die()之前 According to the docs http://codex.wordpress.org/AJAX_in_Plugins you should have something like echo $someValue

before wp_die() or die()

尝试删除contentType和dataType ,因为您没有将JSON返回到您的函数中。 要么 像这样修改你的功能 function my_action() {

echo json_encode('salut');

die();

}

希望能帮助到你 Try deleting contentType and dataType, because you are not returning a JSON into your function. Or modify your funct

...

你的第一种方式总是比Wordpress自己的ajax更快,因为admin-ajax.php处理很多其他事情,如核心管理钩子和其他函数调用,这又使得整个ajax调用非常大。 在第一种方式中,除了自己的功能和输出之外,您不打扰其他任何事情。 这增加了性能。 有没有硬性规定什么使用,你可以更快地做事情的第一种方式,但他们不会与WordPress的核心管理功能挂钩,这可能是某些目的的缺点。 请参阅admin-ajax.php $core_actions_get = array(

'fetch-list',

...

WordPress有一种独特的处理AJAX的方式。 如果您直接向php文件发出请求,那么您不会加载WordPress框架的其余部分,并且您将无法使用许多WordPress特定功能。 在PHP方面,您需要做的是使用如下所示的代码: //for logged in users

add_action('wp_ajax_my_action', 'my_action_callback');

//for not logged in users

add_action('wp_ajax_nopriv_my_act

...

您需要将ajax请求更改为wp-admin / admin.ajax.php。 如果打开该文件,您会发现有一个名为DOING_AJAX的常量设置。 只有对此链接的请求才能避免因为将DOING_AJAX设置为ture而将正常标DOING_AJAX送到浏览器。 实际上你可以像这样调试:visit <?php echo content_url(); ?>/themes/child/get-referral.php?q=xx <?php echo content_url(); ?>/themes/chil

...

ajax返回request,WordPress的Ajax请求返回0(Wordpress ajax request return 0)相关推荐

  1. php返回302,php使用curl请求返回302(30x)

    php使用curl请求返回302(30x) php使用curl请求返回302(30x) web站点已开始使用https,但是项目代码里还有遗留的http,由此有了新发现. 先贴代码: $url = & ...

  2. 通过request对象获取客户端请求信息

    一.HttpServletRequest介绍 HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象 ...

  3. ajax返回的为什么是,为什么WordPress的AJAX请求返回整个HTML页面,而不是JSON结果?(Why Wordp...

    我目前正试图以检查HTML表单上,如果由用户提供的电子邮件已经在数据库中. 因此,我的PHP文件有,如果get_user_by功能工作返回true. 我遵循了AJAX请求的所有WordPress的指导 ...

  4. ajax返回字符串怎么处理,ajax请求返回json字符串/json对象 处理

    1. 返回json字符串如何处理 $.ajax({ url:xxx, success:function(date){ }, error:function(){ } }); 通过最原始的返回: Prin ...

  5. 谷歌浏览器插件——Ajax Interceptor,一个用于修改 ajax 请求响应的 chrome 扩展,可以修改ajax请求返回结果,在浏览器上直接mock数据

    如图,开启后会拦截 getData 这个请求,然后将请求数据改为设置的 []. 1.安装方式 https://github.com/YGYooo/ajax-interceptor github的链接如 ...

  6. ajax返回状态码为零,ajax - HTTP请求返回状态码0时的含义是什么?

    ajax - HTTP请求返回状态码0时的含义是什么? JavaScript网络调用(例如fetch或XMLHttpRequest)或任何其他类型的HTTP网络请求在HTTP状态代码为0时失败意味着什 ...

  7. php 返回字符串给aja,解决ajax异步请求返回的是字符串问题

    1.返回结果差异 js获取后打印res.code无结果.因为返回数据格式不正确. php文件添加header头: header('Content-Type:application/json;'); 或 ...

  8. ajax java请求413_jQuery - 拦截所有Ajax请求(统一处理超时、返回结果、错误状态码 )...

    样例代码: hangge.com //全局的ajax访问,处理ajax清求时session超时 $.ajaxsetup({ contenttype:"application/x-www-fo ...

  9. IE bug:ajax请求返回304解决方案

    IE bug:ajax请求返回304解决方案 参考文章: (1)IE bug:ajax请求返回304解决方案 (2)https://www.cnblogs.com/fanyx/p/6773256.ht ...

最新文章

  1. 王喜文:图解新基建,细说新机遇(100图)
  2. linux批量为文件名添加前缀脚本示例
  3. SAP S4HANA custom logic的一个实际例子
  4. 呆瓜半小时入门python数据分析
  5. 存储过程系列三:根据表别名方式distinct去重插入
  6. 游戏策划入门(6)——把模块变成现实
  7. C++中rapidxml用法及例子
  8. 风云武魂传说防御(四职业)
  9. ChatGPT实现代码生成
  10. 微信小程序 - 小程序分享转发
  11. stdin, stdout, stderr
  12. matlab离散系统pid控制系统,离散系统的数字PID控制仿真
  13. 阿里云服务器怎么扩容
  14. adb不是内部或外部命令,也不是可运行的程序或批处理文件
  15. QString 16进制,arg补0,从0xFFFFFFFFFFFFFFFA到0xFA
  16. Wannafly挑战赛19 A-队列Q
  17. 揭秘Mysql事务隔离级别之可重复读
  18. Centos7端口映射(云端最后别忘了在安全组开放80端口!!!!!!!!!)
  19. 网络生命大百科全书项目
  20. 游戏:致那个曾经热血的青春

热门文章

  1. oracle 删除awr报告,学习笔记:Oracle awr入门 深入了解AWR报告
  2. us域名在哪里注册_us域名,什么是us域名,注册us域名有什么优势
  3. 傻傻分不清楚的研究设计类型
  4. Incorrect column count: expected 1, actual 5
  5. 【Industry digitization】数字化技术正在全球范围内迅猛发展,世界各国和企业纷纷开启数字化转型之路
  6. 【考研专业课答题纸】是什么样子?(内附下载链接)
  7. Mac?Windows?游戏本?大学生到底该如何选择适合自己的笔记本
  8. Confluence 6 有关用户的备忘
  9. 关于“No enclosing instance of type * is accessible. Must qualify the allocation with an enclo……”的总结与思考
  10. 【JVM】垃圾回收算法