试图将变量从$.post传递到php

试图将变量从$.post传递到php,php,jquery,.post,Php,Jquery,.post,我有一个大文件(目前)应该是: 从表单(jQuery)中的选择小部件获取变量 异步提交表单(jQuery) 使用从表单(php)中选择的变量从数据库返回记录 问题是,变量似乎永远不会到达php代码 谁能告诉我我做错了什么吗 我的代码: (全部在一页上) $(函数(){ $(“选择”).change(函数(){ var str=“”; $(“选择选项:选定”)。每个(函数(){ str+=$(this).text()+“”; }); $.post(“index.php”,{zip:st

我有一个大文件(目前)应该是:

  • 从表单(jQuery)中的选择小部件获取变量
  • 异步提交表单(jQuery)
  • 使用从表单(php)中选择的变量从数据库返回记录
问题是,变量似乎永远不会到达php代码

谁能告诉我我做错了什么吗

我的代码:

(全部在一页上)


$(函数(){
$(“选择”).change(函数(){
var str=“”;
$(“选择选项:选定”)。每个(函数(){
str+=$(this).text()+“”;
});   
$.post(“index.php”,{zip:str},函数(数据){
$('result').text(str);},“json”);
});//结束选择
});//端函数
找到你的邮政编码

尝试在其上添加ID,如下所示:

<select name="zip" id="zip">

您编写的脚本正在回显类似“12345”的值。但是您的$.post希望它是json类型。当我删除json类型时,它对我来说非常适合

尝试打印($\u POST);看看会发生什么。嗨,艾米,它返回数组()。我没有意识到它返回了一个数组,所以可能这就是问题所在。。。谢谢不,不是这样。我将$\u POST对象称为$\u POST['zip'],这应该是正确的,但它是空的。这个值在jQuery端确实有效——我可以将该值输入html标记:Agh!我一直提交我的评论太早了!很抱歉我可以通过以下行获取要输入html标记的值:$(“result”).text(str);错误不知何故在将值传输到php中;在你的PHP中,然后看看它是否在那里。呵呵,我过去总是意外地提交评论:-Pvar\u dump($\u POST);结果是数组(0){},无论我是否提交了表单,该值似乎都不会改变。“从jQuery 1.4开始,如果JSON文件包含语法错误,请求通常会以静默方式失败。”我取出了“JSON”,但它对我仍然不起作用。Patrick,你能给我看看你使用的$.post代码吗?我没有保存它,但我所做的只是删除json字符串和mysql片段,因为我没有数据库。你是在Firefox中这么做的吗?firebug中的ajax请求是否显示它以200状态完成?
<select name="zip" id="zip">
$("#zip").val();