成功调用后访问jquery函数?

时间:2010-09-09 00:08:12

标签: php jquery mysql

 jQuery(function ($) {
     /* fetch elements and stop form event */
     $("form.follow-form").submit(function (e) {
      /* stop event */
      e.preventDefault();
      /* "on request" */
      $(this).find('i').addClass('active');
      /* send ajax request */
      $.post('listen.php', {
       followID: $(this).find('input').val()
      }, function () {
       /* find and hide button, create element */
       $(e.currentTarget)
         .find('button').hide()
         .after('<span class="following"><span></span>Following!</span>');
      });
     });
    });

我想知道当我在listen.php文件中处理mysql查询时,如何获取成功消息,然后在之后执行更改?

3 个答案:

答案 0 :(得分:1)

<强>更新

PHP 代码:

<?php
if ( $_POST['action'] == 'follow' ) {
 $json = '';
  if ( $_POST['fid'] == "2" ) {
  $json = array(  array( "id" => 1 , "name" => "luca" ),
                  array( "id" => 2 , "name" => "marco" )
               );
    }
 echo json_encode($json);
}
?>

jQuery 代码:

$.ajax({
    type: 'POST',
    url: 'listen.php',
    data: 'action=follow&fid=' + 2, //$(this).find('input').val(),
    success: function(data) {
    var obj = $.parseJSON(data);
        for ( var i = 0; i < obj.length; i++ ) {
         alert( obj[i].id + ' ' + obj[i].name )
         }
    },
    complete: function(data) {
        //alert(data.responseText);
    },
    error: function(data) {
        alert(data);
    }
});

答案 1 :(得分:0)

它是场景背后负责的XMLHTTP对象。

答案 2 :(得分:0)

你的php脚本应该输出文本...所以假设查询工作输出“YES”如果它不输出“NO”然后在$ .post()中使用这个函数:

function (data) {
    if(data=="YES"){
        // worked
    }
    else{
        // didn't work
    }
}