0

Symfony2 を使用しています。そのようにphpコントローラーでいくつかの検証を行いたい:

if ($request->isMethod('POST')) {
            $old_name = $category->getName();

            $new_name = $request->get('value');

            if ($same == 0) {  
                //valid
                $new_response = new Response($name);
                return $new_response; 
            } else { 
                //not valid
                $old_response = new Response($old_name);
                return $old_response;
            }  
 }

応答が送信された .js ファイルをチェックインする方法はあります$new_response$old_response? ここでのポイントは、送信された応答が$old_response. 送信された応答が$new_response.

事前にどうもありがとうございました!:)

4

2 に答える 2

1

名前だけでなく、一連のデータを返すためにJSONを使用することもできます。

コントローラ:

    if ($same == 0) {  
        //valid
        $new_response = new JsonResponse(array('type' => 'new', 'name' => $name));
        return $new_response; 
    } else { 
        //not valid
        $old_response = new JsonResponse(array('type' => 'old', 'name' => $old_name));
        return $old_response;
    }

JS:

$.ajax({
    url: '...',
    type: 'POST',
    dataType: 'json',
    data: 'value=...',
    success: function(json) {
        if (json.type == 'new')
            // this is new response
        else
            // this is old or some other response

        alert(json.name); // this is the response body (old or new name)
    }
});

以下も参照してください。

于 2013-06-24T10:25:24.363 に答える