javascript - Ajax 中的 Symfony2 表单验证

标签 javascript jquery ajax forms symfony

在某些页面上,我在引导模式中使用表单。我使用 Ajax 提交表单,它在 Controller 中得到验证。大多数用户会正确填写表单,但如果验证失败,表单将重新呈现并发送回给用户。 我一点也不喜欢这样,但我找不到更好的方法,因为我无法访问字段的验证错误。有人有更好的方法来实现以 JSON 发送回验证错误吗?

最佳答案

我自己创建了一个函数

public function getFormErrors(Form $form) {
    $errors = $form->getErrors();
    foreach ($form->all() as $child) {
        foreach ($child->getErrors() as $key => $error) {
            $template = $error->getMessageTemplate();
            $parameters = $error->getMessageParameters();

            foreach ($parameters as $var => $value) {
                $template = str_replace($var, $value, $template);
            }

            $errors[$child->getName()][] = $template;
        }
    }
    return $errors;
}

关于javascript - Ajax 中的 Symfony2 表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20377452/

相关文章:

javascript - toBeFalsy() 的目的是什么?

javascript - 我正在使用 bootstrap 创建幻灯片,但包含的第二个 div 比幻灯片 div 长

ajax - jQuery.ajax 和 $.ajax 是一样的吗?

javascript - X-editable - select2 在 Chrome 更新后不工作

javascript - 复选框更改事件记录罚款或折扣jquery

javascript - 天花板入口和地板入口

c# - updatel 面板内的 jQuery 评级插件

javascript - 无法读取 JSON 中 parent 的属性(property)

javascript - Jquery:如何捕获不在<div>区域内的点击事件?

javascript - 如何优化 AJAX 支持的应用程序中的元素绑定(bind)?