jquery - 如何在 Symfony2 上通过多个按钮发送附加信息?

标签 jquery forms symfony

我最近开始在表单上使用多个按钮,利用 isclicked () 方法和为每个按钮指定的验证组。 它工作得很好,直到我需要在用户按下特定按钮时询问附加信息。

事情是:每当我在 jQuery 中对按钮的单击事件或表单的提交事件执行某些操作时,它都会以某种方式阻止 Symfony 知道按下的按钮,因此它会说 clickedButton 为 null。

例如,当我这样做时: $form->getClickedButton()->getName() 我收到此错误:

"Error: Call to a member function getName() on a non-object"

即使我只是这样做:

$("form").submit( function()
{
    $("button[type='submit']").attr("disabled", true);
});

令我困惑的是,我在这里看到了做这种事情的建议:

$(this).append('<button />').attr('type', 'hidden').attr('name', "something").attr('value', "something");

在提交事件上,但是当我这样做时,我似乎没有在 Controller 中找到有关请求的信息。

如何实现在单击按钮的同时发送附加信息?

最佳答案

点击的按钮是使用提交的数据确定的,如果按钮名称出现在 POSTGET 中,则该按钮被标记为 clicked = true.

现在,在您的 JavaScript 代码段中,您将禁用按钮,并且禁用的字段/输入不会显示在提交的数据中,因此,sf2 无法确定单击了哪个按钮。

正如其他人已经建议使用隐藏字段一样,但是首先将其添加到您的表单中,然后根据需要使用 javascript 填写信息。

关于jquery - 如何在 Symfony2 上通过多个按钮发送附加信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29807331/

相关文章:

javascript - 如何在 html5 中加载部分 html?

javascript - 处理 Angular Directive(指令)中的 ng-click

symfony - 在 symfony 2 中记录实体特定警告的正确代码放置

c# - 将数据从 jQuery POST/GET 到 MVC 4 Controller 并返回 View 的最佳方法

javascript - jQuery 延迟 : cancel progress

php - 更新一段时间制作的表格 - 表格

ruby-on-rails - 提交帖子并获取和接收 ruby​​ 中的响应页面(外部网站)

JavaScript 电话号码验证(拒绝带有字母字符的输入)

css - 如何解决生产服务器上的 css 加载问题

php - 在 Symfony2 中,我应该把 Controller 使用的函数放在哪里?