【问题标题】:Input Tags and Submit form outside the <form>在 <form> 之外输入标签并提交表单
【发布时间】:2015-05-27 15:00:02
【问题描述】:

我知道如何从表单外部提交表单,例如:

<form action="Get?id_sec=120" method="post" id="form15" name="form15" style="display:none"></form>

<input type="submit" class="finish-button primary-button button" border="0"  value="Limpar pedido" form="form15" onclick="javascript:document.form15.submit();" />

但我也想用 javascript 添加一个引用 form 的标签,因为命令 form="example" 在 Internet Explorer 中不起作用。

示例:

<input class="input-cep" name="pr001" id="cepfrete" type="text" form="form15"/>

<input type="radio" name="tipofrete" value="4" form="form15">` 

我该怎么做?


嘿文斯,谢谢,这行得通。非常有用的帮助!我只需要另一件事。如何在 jQuery 中将inputselect 放在同一个表单中?

示例:

<input type="text" data-form="dataForm" name="external-input-2">

<Select id="selectField_1" name="selectField_1" data-form="dataForm" >   
     <option value="52" data-form="dataForm">A</option>
</Select>

【问题讨论】:

  • 没有正确回答您的问题

标签: javascript jquery html forms input


【解决方案1】:

从表单外部提交表单:

HTML

<form id="theForm">...</form>
<button id="submitTheForm">Click to Submit</button>

jQuery

$('#submitTheForm').on('click', function() {
    $('#theForm').submit();
});

在表单提交中包含外部输入:

HTML

<form id="theForm">...</form>
<button id="submitTheForm">Click to Submit</button>
<input type="text" data-form="theForm" name="external-input-1">
<input type="text" data-form="theForm" name="external-input-2">

jQuery

您可以将外部输入作为隐藏输入附加到表单中:

$('#submitTheForm').on('click', function() {
    var form = $('#theForm');

    $('input[data-form="theForm"]').each(function() {
        var input = $(this);
        var hidden = $('<input type="hidden"></input>');
        hidden.attr('name', input.attr('name'));
        hidden.val(input.val());
        form.append(hidden);
    });

    form.submit();
});

【讨论】:

  • 我无法完成这项工作... =\,您可以举个例子吗?谢谢你的遮阳篷!
  • @FelipeVieiraResende 你遇到了什么错误?控制台中是否有任何 JavaScript 错误?
  • 谢谢我完成了这项工作=D 你的帮助非常有用!,我只需要另一件事......我如何在 jquery 中输入和选择相同的形式?示例:
【解决方案2】:

我不确定我是否能完全理解你的问题,但如果你问在不同情况下如何从外部提交表单,她就是我的答案。

对于未来,只需在这样的表单上输入id

<form id="form15"></form>

然后要从任何地方提交此表单,您所要做的就是在 onclick、函数等中调用以下 javascript 行。

document.getElementById("form15").submit();

【讨论】:

  • 不正确。 form 可以用作属性,但 Internet Explorer 不支持。见w3schools.com/tags/att_input_form.asp
  • @VCode 抱歉,已更新。我以前从未见过这种情况
  • 不用担心。它不经常使用——它是 HTML5 中添加的一个新属性。顺便说一句,我删除了我的反对票。
猜你喜欢
  • 2018-07-03
  • 2011-10-24
  • 1970-01-01
  • 1970-01-01
  • 2020-11-16
  • 1970-01-01
  • 2015-09-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多