解决方案 »

  1.   


    定义了,在post之前,用了个alert(picid),输出是正确的
      

  2.   


    直接在前面赋值picid="123456"也是可以,picid是另一个调用了api的函数返回的,应该是字符串格式,反正alert出来是没有问题。
    function showinfo(picid)
    {
    alert(picid); //正常的
    picid="000320479"; //不加这一句post没有回调
    $.post("php/getXml.php",{id:picid},function(data,status){   //后面的略了
      

  3.   


    直接在前面赋值picid="123456"也是可以,picid是另一个调用了api的函数返回的,应该是字符串格式,反正alert出来是没有问题。
    function showinfo(picid)
    {
    alert(picid); //正常的
    picid="000320479"; //不加这一句post没有回调
    $.post("php/getXml.php",{id:picid},function(data,status){   //后面的略了
    showinfo 传进来的参数对吗
      

  4.   


    对的,alert(picid); 看过了
      

  5.   

    你有 json 属性
    所以 php/getXml.php 必须返回 json 格式数据,不能有其它输出,包括 BOM 头
    否则会因 json 解码失败,看上去像是没反应
      

  6.   

    你alert(picid)弹出的是什么用alert(typeof(picid))看一下数据类型
      

  7.   

    Quote: 引用 6 楼 xuzuning 的回复:

    你有 json 属性
    所以 php/getXml.php 必须返回 json 格式数据,不能有其它输出,包括 BOM 头
    否则会因 json 解码失败,看上去像是没反应[/quote就返回了个被json_encode过的关联数组,在js这边把picid直接赋值picid="123456"是可以正常返回json的。
    真头疼
      

  8.   

    $.post("php/getXml.php",{id:''+picid},function(data,status){   //后面的略了
    这样写试试 
      

  9.   

    你把pcid的内容直接放到 id  后边  试试
      

  10.   


    这个当然可以咯。我也让那个php直接echo收到的$_POST['id']试了试,也就是直接id:picid连返回都没有,用id:"123456"是可以,之前再给picid="123456"也可以。
    受不了了。
      

  11.   

    var pid=pcid;
    $.post("php/getXml.php",{id:pid},function(data,status)
    这样看下啥结果
      

  12.   

    最后找到是空白符的问题,可能是中间用api的时候,api自动给数据加了个什么,在php里面trim()了一下就可以了,js的本身的传值没有问题。太粗心了,多谢各位爷。