[英]jQuery ajax returning nothing when posting multiple data
你好我想用jQuery ajax将多个数据发布到一个php文件但是当我执行该函数时它没有重新调整,而且php也没有得到数据
我的函数看起来像这样:
function sendForm(){
jQuery.ajax({
url: <?php echo $path; //this the url where the php file is ?>,
type: 'POST',
data: {
addressOne: jQuery('#Form #table .key :input').serialize(),
addressTwo: jQuery('#Form #table_2 .key :input').serialize(),
additionalData: jQuery('#Form #More :input').serialize(),
preloaded: <?php echo serialize($array); ?>,
action: 'sendIt'
},
async: false,
cache: false,
success: function(data){
alert(data); //or console.log(data);
}
});
}
在PHP中我做这样的事情:
<?php
function handleData() {
parse_str($_POST['addressOne'], $arrayOne);
parse_str($_POST['addressTwo'], $arrayTwo);
parse_str($_POST['additionalData'], $arrayThree);
$preloaded = unserialise($_POST['preloaded']);
//than do some stuf here for example print_r all...
}
if(isset($_POST['action']) && !empty($_POST['action'])) {
$action = $_POST['action'];
switch($action) {
case 'sendIt' : handleData();
break;
//etc...
}
}
?>
我不知道我做错了什么? 是否有更好的方式发布多个数据?
如果我只使用一个数据,比如我正在序列化整个表单并且不发布序列化的php数组而不是工作正常,但我想使用这四个单独的数据。
您使用ulr
错误输入了ajax查询url
考虑为你的浏览器使用一个插件,比如Web Developer ,我很确定它会收到错误,你不需要在这里问。
编辑 :如果您仍然遇到麻烦,请通过一些alert
验证您要发送的数据,通过从浏览器手动导航来验证您的php
脚本是否按照您的要求执行操作,因为您提供了success
回调,任何因为你不是async
等等...验证一切
你在ajax函数中输入了一个拼写错误,
url: <?php echo $path; ?>, //needs to be url, not ulr
您也不需要serialize
文本字段中的值。 就这样做,
jQuery.ajax({
url: <?php echo $path; //this the url where the php file is ?>,
type: 'POST',
data: {
addressOne: $('#Form #table .key :input').val(),
addressTwo: $('#Form #table_2 .key :input').val(),
additionalData: $('#Form #More :input').val(),
preloaded: <?php echo serialize($array); ?>,
action: 'sendIt'
},
async: false,
cache: false,
success: function(data){
alert(data); //or console.log(data);
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.