Jquery 正在输出到浏览器的JSON响应

Jquery 正在输出到浏览器的JSON响应,jquery,symfony,Jquery,Symfony,我使用Symfony2控制器返回JSON字符串: return new Response(json_encode(array('errors' => $errors))); 基本上,我希望将错误返回到表单中。但当我调用该操作时,JSON输出将显示在我的浏览器中。但是我想在JavaScript(jQuery)中的回调函数中调用JSON 我试图将内容类型设置为application/json,但它在IE中不起作用,因为IE希望保存文件 我的JavaScript: $("#form").sub

我使用Symfony2控制器返回JSON字符串:

return new Response(json_encode(array('errors' => $errors)));
基本上,我希望将错误返回到表单中。但当我调用该操作时,JSON输出将显示在我的浏览器中。但是我想在JavaScript(jQuery)中的回调函数中调用JSON

我试图将内容类型设置为
application/json
,但它在IE中不起作用,因为IE希望保存文件

我的JavaScript:

$("#form").submit(function() {
    var url = $(this).attr("action");

    $.ajax({
        type: "POST",
        url: url,
        data: $(this).serialize(),
        success: function(data, textStatus, jqXHR) {
            // Ouptut errors
        }
    });
});

我能做什么?

您需要防止表单在单击时提交,这样它只能通过
$.ajax()提交。


我猜你用错javascript了。向我们展示您的javascriptThank(;这对Firefox有效,但对IE无效。因此,我在函数末尾添加了一个
return false
语句。
$("#form").submit(function(e) {
    e.preventDefault(); // stop the form being submit on click

    var url = $(this).attr("action");    
    $.ajax({
        type: "POST",
        url: url,
        data: $(this).serialize(),
        success: function(data, textStatus, jqXHR) {
            // Ouptut errors
        }
    });
});