【问题标题】:Link to submit a form in symfony2 doesn't valid the form在 symfony2 中提交表单的链接无效
【发布时间】:2012-08-01 08:55:19
【问题描述】:

我有一个表单,我想通过链接提交它。类似的东西:

<form action="{{ path('update', { 'id': entity.id }) }}" id="update" method="post" {{ form_enctype(edit_form) }}>
    {{ form_widget(edit_form) }}
</form>

... some HTML

<a href="javascript:$('#update').submit();">Valid</a>

但是当我使用此链接提交表单时,表单未在 Javascript 中验证(检查空字段等...)并且不显示错误工具提示

如果我在表单标签中创建一个按钮,它可以工作,但我希望这个按钮在表单标签之外。

我该怎么做?

编辑:我的表单在模式对话框中。

【问题讨论】:

    标签: jquery forms symfony


    【解决方案1】:

    不是一个理想的答案,但我想这应该可行......

    在您的表单中有一个提交按钮,使用 css 隐藏它

    那么你当前的 js 链接在哪里,让它使用 jquery 来模拟点击正确的表单提交按钮

    再次,不理想,但我想它应该可以完成这项工作..

    【讨论】:

      【解决方案2】:

      这将按您的预期工作,

      <script language="javascript">    
          $.fn.submitForm = function() {
              $('#update').submit();
          };    
      </script>
      

      电话应该是,

      <a href="javascript:$(this).submitForm();">Valid</a>
      

      但在href 中使用javascript 执行是不受欢迎的,请查看this previous 关于此主题的讨论,

      那么我想知道的是,既然您使用的是 Jquery,为什么要在 html href 中触发提交? ,只需在 javascript 文件中说 script.js

      //assuming there is only one <a></a> tag
      $(document).on('click', 'a', function(){
         $('#update').submit();
      });
      

      【讨论】:

        【解决方案3】:

        我用另一种方式做到了。

        为了拥有 HTML5 字段控件,我放置了一个隐藏的提交按钮,我做到了;

        $('#my_submit_button').click();
        

        它有效。

        【讨论】:

          猜你喜欢
          • 2010-09-30
          • 2015-01-01
          • 2023-03-15
          • 2023-04-10
          • 2015-03-27
          • 1970-01-01
          • 2019-01-15
          • 2012-05-05
          • 2015-03-26
          相关资源
          最近更新 更多