【问题标题】:JQuery: Howto submit form that has submit-button with the name "submit"JQuery:如何提交具有名称“提交”的提交按钮的表单
【发布时间】:2012-10-02 22:56:49
【问题描述】:

我知道当提交按钮以保留名称“submit”命名时,使用$('form').submit() 不起作用。

烦人的是我无法更改我要提交的表单的html。

我认为解决方法是在使用 $('form').submit() 之前删除输入按钮,但这似乎不起作用。

$('input:last').remove();
$('form').submit();

有人知道这个问题的另一种解决方案吗?

【问题讨论】:

  • 表单没有 id 或 class 或类似的东西吗?
  • 或者试试$('form[0]').submit();,这个数字必须对应于从正文开始计算的表单数
  • 表单没有 id 或类。但是用我的代码选择元素确实有效。手动删除 html 代码中的提交按钮是我的问题的解决方案,但是当我尝试使用 javascript 执行此操作时,问题仍然存在。
  • 好吧,看看我在 NullPointer 的答案中给出的评论......也许有帮助

标签: jquery


【解决方案1】:

你有两个选择:

1.创建一个formElement并使用它的.submit方法。

document.createElement('form').submit.apply($('form')[0]);

2.使用.submit方法形成HTMLFormElement的原型

HTMLFormElement.prototype.submit.apply($('form')[0]);

原因在this answer中说明。

【讨论】:

    【解决方案2】:

    这是我曾经使用过的示例代码。它应该也适合你。

    <form method="post" action="" id="myform">
    <input type="text" value="kdfhdjskfsdhf" name="test" />
    <input type="button" name="submit" value="submit" onclick="submit_this_form()" />
    </form>
    
    function submit_this_form(){
        jQuery($('input[name="submit"]')).attr('name', 'new_submit');
        jQuery('#myform').submit();
    }
    

    【讨论】:

      猜你喜欢
      • 2014-10-31
      • 2015-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-23
      相关资源
      最近更新 更多