【问题标题】:Is it possible to submit an html form without using an input button?是否可以在不使用输入按钮的情况下提交 html 表单?
【发布时间】:2013-06-13 22:17:09
【问题描述】:

我找到了这篇文章 (http://www.developertutorials.com/tutorials/javascript/javascript-form-submission-no-button-050412-1292/),但它已有 8 年历史(互联网和鸭嘴兽年代约 96 年)。

strager 在这里的回答:Submitting a form by pressing enter without a submit button 表示它可能像调用“this.form.submit();”一样简单在选择的事件中(onChanged() 或其他)。

是这样吗?或者不是这样?或者不是这样?

【问题讨论】:

    标签: jquery html html-select html-input


    【解决方案1】:

    这是真的。您通常可以在 any 事件的表单上调用 submit(),只要您清楚地识别表单即可。 @pXL 为此使用 jQuery 语法;我唯一要注意的是,您需要确保页面上只有一个表单,因为 jQuery 会在其选择器返回的元素的 列表 上触发处理程序。为表单命名

    $('form[name=theOne]')
    

    或使用数组访问器

    $('form')[0]
    

    您可以在字段中的 keyUp 上触发它(您可以测试键值以匹配 'return'),或者即使用户单击表单外的某个位置。

    $('html').click(function(){$('form')[0].submit()});
    

    (不过,这可能不是最好的用户体验!)

    【讨论】:

      【解决方案2】:

      是的,您可以使用.submit() 提交表单无需提交按钮

      HTML:

      <form action="some.php" method="get">
        First name: <input type="text" name="fname">
        Last name: <input type="text" name="lname">
      </form>
      

      JS:

      $('form').submit();
      

      演示---&gt;http://jsfiddle.net/PqXWJ/19/

      【讨论】:

      • 你确定这是正确的 jsfiddle 吗?它似乎涉及更多,但不一定相关。
      • @ClayShannon ,实际上我更新了我正在研究的小提琴之一 - 无论如何,你可以看到这个演示 ---&gt; jsfiddle.net/PqXWJ/19
      • 我明白了,"{"error": "Please use POST request"}" 更改 jQuery 来发布,它似乎有效。奇怪的是,我还尝试过改变动作。将操作设置为“/”并使用“.submit()”,结果窗格将成为窗格中的完整 jsfiddle 页面。
      猜你喜欢
      • 1970-01-01
      • 2011-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-04
      • 1970-01-01
      相关资源
      最近更新 更多