+ -
当前位置:首页 → 问答吧 → jquery+Ajax  如何获取返回值?

jquery+Ajax  如何获取返回值?

时间:2009-05-10

来源:互联网

如题,小弟搞不明白。

--------------HTML--------------------

姓:   <input type="text" style="color:#666" id="lastname" name="lastname" value="" /><br />
名:   <input type="text" style="color:#666" id="firstname" name="firstname" value="" /><br />

<button id="go">确定</button>
<div id="myID" style="display:none;"></div>

----------------JQUERY-------------------

$("#go").click(function(){
    var dataString = 'lname='+ $("#lastname").val() + '&fname=' + $("#firstname").val();
    $.ajax({
        type: "POST",
               url: "welcome.php",
              data: dataString,
              success: function() {
            $("#myID").fadeIn('slow');
       }
     });
});

----------------PHP-------------------

<?php
$fname = (isset($_POST['fname']) && $_POST['fname'] )? $_POST['fname']:"朋";
$lname = (isset($_POST['lname']) && $_POST['lname'] )? $_POST['lname']:"友";
echo  $fname.$lname .", 欢迎光临" . "<br />";
?>

我想在id为myID里面显示经php处理过后的内容,我用了$("#myID").fadeIn('slow'); 显示是不行的,但是我不知道用什么来代码回调的数据,如果用正常的Ajax的话,我只要又能够 document.getElementById('myID').innerHTML =xmlHttp.responseText;就可以了,但是我不知道jquery是如何表示的,请大侠指点!

作者: gideon300   发布时间: 2009-05-10

另外,我看了一个教程,他是通过下面的代码做的,我在他的演示地址(http://www.61dh.com/demo/jquery-load-demo.html)上是成功的,但是下载之后到了我的电脑上就不行了,请大家指点:

$("#go").click(function(){
  $("#myID").load("welcome.php", {"lname" : $("#lastname").val(), "fname" : $("#firstname").val()}, function(){
    $("#myID").fadeIn('slow');}
  );
});

});

作者: gideon300   发布时间: 2009-05-10

success: function(data) { //这个参数data就是返回值
            $("#myID").fadeIn('slow');
//你可以在处理data,比如显示它
//例如:$('#myID').html(data);
       }

作者: keakon   发布时间: 2009-05-10

应该可以的,你下载的代码应该运行在php服务器软件上。

作者: seekarmor   发布时间: 2009-05-10

引用
引用第2楼keakon于2009-05-10 10:44发表的 Re:jquery+Ajax 如何获取返回值? :
success: function(data) { //这个参数data就是返回值
            $("#myID").fadeIn('slow');
//你可以在处理data,比如显示它
//例如:$('#myID').html(data);
       }



大哥,我用你的代码试过了,其他的都还好,就只是不显示php返回的内容!

        success: function(data) {
            alert(data);
            $("#myID").fadeIn('slow')
                      .html(data);
       }
如果我把 html(data); 换成 text(data); 话,可以显示php文件中所有内容,当然这个不是我想要的,我只想得到echo输出的内容,但是如果用html(data);的话,则什么都不显示,这个是不是因为php文件的缘故啊?

小弟刚刚接触jquery,请大哥帮忙啊,我真的有很多不懂,希望得到指点!

作者: gideon300   发布时间: 2009-05-10

还有,我的测试服务器是AppServ,应该不会是服务器的原因!

作者: gideon300   发布时间: 2009-05-10

我明白了,已经解决了,谢谢!   

作者: gideon300   发布时间: 2009-05-10

应该是返回类型没设置吧

作者: jaway   发布时间: 2009-05-11

学习学习,刚来而已

作者: sdywcd   发布时间: 2009-05-13

我得到的json内容为{"aa";"1":"bb":"2"}怎么取出来啊?我用json.aa怎么取不到值?

作者: SHUNKA   发布时间: 2009-05-13

已经解答过了,你拿到的是string,需要转换为json对象

作者: keakon   发布时间: 2009-05-13

相关阅读 更多