ajax php断点调试,关于javascript:如何在jquery ajax调用期间调试php
我有提交给php服务器的html表单。如果我以带有提交按钮和action =" screen_custom.php"的标准方式提交表单,则可以正常工作。我看到一个充满有效JSON数据的页面。
但是,如果我使用jquery ajax调用提交表单,则会返回一个空的json数组。我相信php由于某些未知原因无法找到表单值。无论如何,我如何在ajax调用期间调试php?响应必须仅包含填充jquery DataTable所需的数据。如果我回显调试输出,则数据表将无法填充。
这是一些将表单成功提交到php并返回良好json数据的代码。
Filter By | Criteria | Show |
---|---|---|
Appreciation Potential (%) |
Any > 0% > 10% |
这是一些无法返回相同json数据的代码:
Filter By | Criteria | Show |
---|---|---|
Appreciation Potential (%) |
Any > 0% > 10% |
Run
和javascript:
function runCustomScreen() {
$('#customTable').DataTable({
"ajax": {
type: 'POST',
url:"screen_custom.php",
data: $('#criteriaForm').serialize(),
complete: function(jqXHR, textStatus) {
console.log("Run was successful, textStatus="+textStatus);
},
error: function(e, textStatus, errorThrown) {
alert("textStatus="+textStatus +", errorThrown="+errorThrown);
}
}
});
return false; //needed if called by onclick event
}
这是php中处理表单数据并返回json的部分:
$upside = $_POST["upside"];
$sql ="SELECT * FROM stocks" .$where;
//echo ''
//echo 'sql=' .$sql .'';
//echo 'console.log(' .$sql .')';
//echo '';
$rs = mysql_query($sql);
//store result in an array
$results = array();
while($row = mysql_fetch_object($rs))
{
$results[] = $row;
}
$data = json_encode($results);
echo '{"data":' .$data .'}';
//close the db connection
mysql_close($connection);
请注意,如果我取消注释除了最后一个回声,则不会填充数据表。那么我该如何调试呢?
可能是分开的,但是echo {"data": .$data .};只是...为什么?
您需要在返回时指定dataType,因为您是json中的encodin。 在成功函数之前添加ajax调用:dataType:" json",从php端,您只需要返回$ data,例如:echo $ data;
我想出了如何调试它。 在chrome调试器中,选择"网络"标签,然后从列表中选择" screen_custom.php",然后选择"响应"标签。 它显示了php的输出。 我取消对echo sql语句的注释,并且可以看到实际上,正如我所怀疑的,表单参数没有被读取。
然后我搜索了这个问题,发现解决方案是修改数据paramenter js,如下所示:
data: function(d) {
var form_data = $('#criteriaForm').serializeArray();
$.each(form_data, function(key,val) {
d[val.name] = val.value;
});
},
我不知道第一个方法为什么不起作用,因为我可以看到在标题中发送了正确的参数。 但这有效。
您是否尝试过在PHP脚本上使用isset($_POST['value'])方法? 其中value是您将分配给提交按钮的名称。
我想出了如何调试它。 在chrome调试器中,选择"网络"标签,然后从列表中选择" screen_custom.php",然后选择"响应"标签。 它显示了php的输出。 我取消对echo sql语句的注释,并且可以看到实际上,正如我所怀疑的,表单参数没有被读取。 但为什么?
@ user3217883尝试将名称也设置为选择框中的选项值
ajax php断点调试,关于javascript:如何在jquery ajax调用期间调试php相关推荐
- mvc jquery ajax方法,asp.net mvc-如何在jQuery $ .ajax()中将模型发送请求到MVC控制器方法...
asp.net mvc-如何在jQuery $ .ajax()中将模型发送请求到MVC控制器方法 在使用以下代码进行自动刷新时,我假设执行发布后,模型将自动发送给控制器: $.ajax({ url: ...
- php中如何调用javascript,如何在php中调用javascript代码?
JavaScript是客户端脚本语言,PHP是用于与数据库交互的服务器端脚本语言.那么如何在php中调用javascript代码?下面本篇文章给大家介绍一下.有一定的参考价值,有需要的朋友可以参考一下 ...
- ajax 与 err_connection_refused,如何在jquery ajax中处理net :: ERR_CONNECTION_REFUSED
4 个答案: 答案 0 :(得分:6) 您可以使用timeout $.ajax属性触发error回调. 如果服务器在特定时间限制内没有响应,这将确保触发error回调. $.ajax({ url: & ...
- jquery ajax 延迟执行,javascript – 尝试为jQuery AJAX请求添加延迟
我试图延迟一个 AJAX请求,以便在输入单元的最后一个键盘后2-3秒发送它. 到目前为止,我已设法延迟请求,但在2-3秒后,我收到一个请求发送给该字段中的每个密钥- 如何让jQuery取消第一个并发送 ...
- android机上没有usb调试模式吗,如何在Android上启用USB调试
Android系统的手机以及平板电脑占有巨大的市场份额,当使用USB数据线完成电脑端与安卓手机端数据传输时,需要将安卓手机开启USB调试模式. 什么是USB调试?USB调试是一种模式,允许Androi ...
- 在dw中如何调试html代码,如何在 Dreamweaver 中优化和调试代码 - Dreamweaver 用户指南...
了解如何在 Dreamweaver 中清除代码.检查浏览器兼容性.验证 XML 文档并使页面符合 XHTML 规范. 清理代码 您可以自动删除空标签,合并嵌套 font 标签,以及通过其它方法改善杂乱 ...
- mvc ajax提交多选,javascript – 如何使用Jquery AJAX调用MVC Action然后在MVC中提交表单?...
在我的MVC视图我有按钮: 当我点击这个按钮我需要调用一个动作,做一些东西,然后提交我的表单. 我有这个jQuery: $('#btnSave').click(function () { $.ajax ...
- 表单ajax提交插件,详解javascript表单的Ajax提交插件的使用
Ajax 提交插件 form.js 插件有两个核心方法:ajaxForm()和ajaxSubmit(),它们集合了从控制表单元素到决定如何管理提交进行的功能. //ajaxForm 提交方式 $('# ...
- php ajax传递变量,将PHP变量传递回jQuery $.ajax函数
1. HTML 我有一个输入请求用户输入他们的PIN码: < input type ="text"name ="pin"maxlength =" ...
- ajax asp后台获取不到post数据,jQuery AJAX调用将数据发布到ASP.Net页面(不是Get但POST)...
选项1.保持服务器端代码相同 首先删除kendo.stringify.然后删除contentType或将其更改为- "application/x-www-form-urlencoded; c ...
最新文章
- php 判断是否gzip,PHP网站判断页面文件或图片是否经过gzip压缩
- 搜索引擎优化(独立阐述)
- -Git 使用技巧 总结 MD
- 第一章 Matlab的简单介绍
- Oracle数据库查看用户状态
- BufferedReader_字符缓冲输入流
- 清华裴丹:AIOps 落地路线图
- 【dfs】树(jzoj 2753)
- Java父类强制转换子类原则
- unity要学ecs吗_ECS的泛泛之谈
- charles 华为手机使用_华为手机EMUI9.0健康使用手机怎么用?如何控制手机使用时长?...
- Tomcat启动项目没问题,网页一片空白
- stm32f4 dma da正弦波发生器 keil5 hal库 CubeMX
- python-贪心算法
- 清华大学马少平:一款智能硬件背后的“AI争霸”...
- PowerDesigner修改设置表格背景色
- 【西祠日志】【05】修修补补asp留言板,学习git,asp的ajax实现(2015.07.21周二)
- pmf-automl源码分析
- 瑞尔森大学的计算机科学专业,瑞尔森大学专业介绍
- 基于词表和N-gram算法的新词识别实验