通过AJAX返回数据和成功/错误消息

时间:2012-02-09 15:09:41

标签: php jquery

我正在创建一些功能,在提交表单时,会显示成功消息,并通过AJAX获取更新的详细信息并显示在页面上。

控制器:

public function updateAction()
{
    $query="my query"

    if(mysql_query($query))
    {
        echo "Your changes have been saved successfully";

        $customer=Customer::getDetails($_POST['cust_id']);

        include('application/view/admin/customer/_view.php');
    }
    else
    {
        echo "There was a problem saving your changes";
    }
}

查看:

$('#update-customer-form').submit(function(){
    $.ajax({
        url: 'admin/customer/update',
        type: 'POST',
        data: $(this).serialize(),
        success: function(result){
            alert(result);
            $('#details').html(result);
        }
    });

    return false;
});

我想要做的是传递成功消息,以及如果成功保存记录,则从_view.php文件输出HTML。否则,只显示一条错误消息。我怎么能这样做?

编辑:除了使用json_encode()之外,还有什么方法可以做到这一点吗?我遇到的问题是在我的json_encode()中包含PHP文件。

1 个答案:

答案 0 :(得分:2)

返回一个带有两个属性的json对象:

{ "success": "true", "markup":"<div>markup goes here</div>"  }

请记住在标记中编码引号。

success: function(result){
        if (result.success=='true') {
            $('#details').html(result.markup);
        }
    }