AngularJS 阻止 symfony2 表单中的提交按钮

2024-04-25

我在 symfony2 中创建了表单,最后呈现了提交表单的按钮。当我添加ng-app="myApp"一切正常,但我无法提交此页面上的表单。为什么会这样以及如何解锁?

FORM:

->add('company','choice',array(
                'mapped' => false,
                'attr'=>array('ui-select2'=>'myArray', 'ng-model'=>'form.company','ng-options'=>'option.value as entity.name_company for entity in entities','ng-change' => 'changeItem()')
            ))

            ->add('project',null,array(
                'attr'=>array('ui-select2'=>'myArray2', 'ng-model'=>'form.task','ng-options'=>'option.value as entity.description_task for entity in tasks')
            ))

VIEW:

<html ng-app="flowApp">
<head>
    <link rel="stylesheet" href="{{ asset('external-libs/select2/select2.css')}}">
    <script src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
    <script src="{{ asset('external-libs/select2/select2.js')}}"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.5/angular.min.js"></script>
    <script src="{{ asset('external-libs/select2.js')}}"></script>
    <script src="{{ asset('external-libs/app.js') }}"></script>
        <style>
                .select2-choice { width: 220px; }
        </style>
</head>
<body>
    <div class="container" ng-controller="MainCtrl">
    {{ form(form) }}
    </div>
</body>
</html>

SCRIPT:

var app = angular.module('flowApp', ['ui.select2']).config(function($interpolateProvider){
        $interpolateProvider.startSymbol('{[{').endSymbol('}]}');
    }
);

app.controller('MainCtrl', function ($scope, $element,$http) {


    $http({method: 'GET', url: 'companies.json'}).
        success(function(data, status, headers, config) {

         $scope.entities = data.entities;
         $scope.form = {company: $scope.entities[0].value };
         console.debug(data.entities);
    });
});

Well 文档 https://docs.angularjs.org/api/ng/directive/form says:

因此,Angular 会阻止默认操作(表单提交 到服务器)除非该元素具有 action 属性 指定的

这样您就可以向表单添加操作属性。在我的示例中,我使用 grenerateUrl 函数,但您应该生成当前路由的 url(生成表单的控制器的路由)

$data = array();
            $form = $this->createFormBuilder($data,
                array("action" => $this->generateUrl("route_to_curent_path"))))
                ->add('field', 'text')
                ->add('submitButton', 'submit')
                ->getForm();

EDIT:刚刚发现这是一个重复的问题here https://stackoverflow.com/questions/24353796/form-will-not-submit-when-placed-inside-ng-app and here https://stackoverflow.com/questions/17178686/why-doesnt-my-form-within-the-ng-app-directive-submit-angularjs and here https://stackoverflow.com/questions/20069810/empty-action-attribute-on-a-form-with-angularjs?lq=1 and here https://stackoverflow.com/questions/16945837/angular-js-submit-form-old-way?lq=1(此链接是得票最高的答案)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS 阻止 symfony2 表单中的提交按钮 的相关文章

随机推荐

  • 分支输出 Keras

    我的模型分为 2 个输出层 如下所示 输入 gt L1 gt L2 gt L3 gt 输出1 输入 gt L1 gt L2 gt L3 gt 输出2 我这样使用它是因为我想要out1 and out2有2个不同的激活函数 因此 我创建了一个
  • D 中的特征可以用于类型类吗?

    我是 D 新手 我正在寻找一种使用类似 Haskell 的类型类进行编程的好方法 例如D 中的函子 幺半群等 Tango 或 Phobos 中是否实现了类似的功能 我听说过可以对某些属性进行编译时类型检查的特征 它们可以用于类型类吗 我尝试
  • 如何使用 git format-patch 将提交压缩到一个补丁中?

    我在一个分支上有 8 个提交 我想通过电子邮件发送给一些尚未了解 git 的人 到目前为止 我所做的一切要么给我 8 个补丁文件 要么开始为分支历史记录中的每个提交提供补丁文件 从一开始 我使用 git rebase interactive
  • 浏览器选项卡存储?

    是否有一个浏览器存储只能由创建它的页面使用 我正在制作一个 TamperMonkey 脚本来自动化我的工作 当打开来自特定域的页面时会触发它 然后 它会在所述页面中找到特定链接 同一域 并在同一选项卡中将其打开 如果新打开的页面符合条件 则
  • 在 numpy 中快速找到对称对

    from itertools import product import pandas as pd df pd DataFrame from records product range 10 range 10 df df sample 90
  • PaintComponent() 正在其他组件上绘图

    我正在使用基于中的代码的自定义类这个答案 https stackoverflow com a 16909994 5686799 绘制一个形状像讲话泡泡的背景 每当我将应用程序的窗口大小调整到足以使组件在顶部或底部突出时 该组件的轮廓就会绘制
  • 有没有办法通过 PowerShell 检测声音?

    我想检测电脑是否正在播放任何类型的声音 如果它没有播放任何类型的声音 我可以在 Powershell 中使用其他条件并执行下一步需要执行的操作 那么有没有办法通过 PowerShell 来检测声音呢 Thanks 方法一 Import Mo
  • 如何声明二维数组?

    创建二维数组的最简单方法是什么 我希望能够做类似的事情 declare int d 0 m 0 n 您还可以通过指定数组的索引来创建关联数组或类似 哈希表 的数组 array array 0 gt array name gt John Do
  • Git:切换分支时保留忽略的文件

    我知道这看起来像是重复的GIT 切换分支时如何保留被忽略的文件 https stackoverflow com questions 15552959 git how to keep ignored files when switching
  • Tomcat 组件是什么?什么是卡塔利娜和郊狼? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 谁能描述一下 Tomcat 中的组件是什么 它在 Tomcat 服务器中的作用是什么 什么是郊狼 卡塔琳娜是什么 Catalina是T
  • 奇数运算符优先级/关联性行为[重复]

    这个问题在这里已经有答案了 在 Python 2 7 中 下面的内容是怎么回事 True w in what 两者的行为都不同 True w in what and True w in what gt gt gt True w in wha
  • 当你用 mlockall 设置的内存用完时会发生什么?

    我正在开发一个需要大量内存才能批量运行的 C 应用程序 gt 20GB 我的一些客户遇到了内存限制 有时操作系统开始交换 总运行时间加倍或更糟 我读到可以使用 mlockall 来防止进程被换出 当进程内存需求以这种方式接近或超过可用物理内
  • 如何在JPA中反映“嵌套集”模型

    很好用嵌套集 http www evanpetersen com item nested sets html对于分层数据 但在这个设计中 如果删除或插入一些数据 您应该始终计算右侧和左侧节点 此外 您没有任何外键 我如何用 JPA 反映这个
  • python模拟下面的return_value是什么

    我对 python 模拟很陌生 所以只是想理解它 在下面的代码中 下面指出的 1 和 2 语句之间有什么区别 因为最后我可以设置mock response status code与任一陈述 import requests def get d
  • Safari - 视频加载速度太慢

    我在将视频添加到我的网站时遇到了一些麻烦 我使用这段代码
  • 使用自己的路径在不同的 python 可执行文件下生成 multiprocessing.Process

    我有两个版本的Python 实际上是两个conda环境 path to bin 1 python path to bin 2 python 我想从一个版本的 python 启动一个在另一个版本中运行的函数 使用类似multiprocessi
  • 敲除验证

    我有一个 asp net mvc3 项目 我在其中使用淘汰赛绑定对表进行批量编辑 我想在保存数据时进行必需验证和数字验证等验证 有没有更简单的方法来进行淘汰验证 PS 我没有使用表格 看一下敲除验证 https github com eri
  • 井字游戏的极小极大

    我正在尝试用简单的极小极大算法来解决井字游戏 简单 但应该涵盖很多语言 到目前为止我所拥有的 该板表示为 9 个 未绑定 变量的数组 这些变量可以设置为x or o 获胜条件基本上是 win Player X1 X2 X3 X1 Playe
  • 如何在 IAR EWARM 5.4 中抑制警告(从错误转换)

    我有一个用于日志记录的宏 它接受可变数量的参数 该宏将由 GCC 在非嵌入式上下文中处理 并扩展为有效的 C 代码 尽管如此 无论我在何处调用宏 数千个位置 IAR EWARM 都会给出错误 Pe054 宏调用中的参数太少 EWARM 确实
  • AngularJS 阻止 symfony2 表单中的提交按钮

    我在 symfony2 中创建了表单 最后呈现了提交表单的按钮 当我添加ng app myApp 一切正常 但我无法提交此页面上的表单 为什么会这样以及如何解锁 FORM gt add company choice array mapped