说我有:
<form method="get" action="something.php">
<input type="text" name="name" />
</form>
<input type="submit" />
我如何在表单外提交那个提交按钮,我认为在HTML5中有一个提交的动作属性,但我不确定这是否完全跨浏览器,如果不是的话,有没有办法这样做?
说我有:
<form method="get" action="something.php">
<input type="text" name="name" />
</form>
<input type="submit" />
我如何在表单外提交那个提交按钮,我认为在HTML5中有一个提交的动作属性,但我不确定这是否完全跨浏览器,如果不是的话,有没有办法这样做?
当前回答
我有一个问题,我试图从表格单元格元素隐藏表单,但仍然显示表单提交按钮。 问题是表单元素仍然占用了额外的空白空间,使得表格单元格的格式看起来很奇怪。 display:none和visibility:hidden属性不起作用,因为它也会隐藏提交按钮,因为它包含在我试图隐藏的表单中。 简单的答案是使用CSS将表单高度设置为几乎为零
So,
CSS—
#formID {height:4px;}
为我工作。
其他回答
试试这个:
<input type="submit" onclick="document.forms[0].submit();" />
尽管我建议在表单中添加一个id,并通过它来访问,而不是document.forms[index]。
一个对我很有效的解决方案,在这里仍然没有。它需要在<表单>中有一个视觉上隐藏的<submit>或<input type="submit">元素,并在其外部有一个相关的<label>元素。它看起来是这样的:
<form method="get" action="something.php">
<input type="text" name="name" />
<input type="submit" id="submit-form" class="hidden" />
</form>
<label for="submit-form" tabindex="0">Submit</label>
现在,该链接允许您通过单击<label>元素来“单击”表单<submit>元素。
我有一个问题,我试图从表格单元格元素隐藏表单,但仍然显示表单提交按钮。 问题是表单元素仍然占用了额外的空白空间,使得表格单元格的格式看起来很奇怪。 display:none和visibility:hidden属性不起作用,因为它也会隐藏提交按钮,因为它包含在我试图隐藏的表单中。 简单的答案是使用CSS将表单高度设置为几乎为零
So,
CSS—
#formID {height:4px;}
为我工作。
我使用这种方式,并喜欢它,它在提交之前验证表单也兼容safari/谷歌。没有jquery n.n。
<module-body>
<form id="testform" method="post">
<label>Input Title</label>
<input name="named1" placeholder="Placeholder" title="Please enter only alphanumeric characters." required="required" pattern="[A-Za-z0-9]{1,20}" />
<alert>No Alerts!</alert>
<label>Input Title</label>
<input placeholder="Placeholder" title="Please enter only alphanumeric characters." required="required" pattern="[A-Za-z0-9]{1,20}" />
<alert>No Alerts!</alert>
<label>Input Title</label>
<input placeholder="Placeholder" title="Please enter only alphanumeric characters." required="required" pattern="[A-Za-z0-9]{1,20}" />
<alert>No Alerts!</alert>
</form>
</module-body>
<module-footer>
<input type="button" onclick='if (document.querySelector("#testform").reportValidity()) { document.querySelector("#testform").submit(); }' value="Submit">
<input type="button" value="Reset">
</module-footer>
如果你会使用jQuery,你就可以使用这个
<form method="get" action="something.php" id="myForm">
<input type="text" name="name" />
<input type="submit" style="display:none" />
</form>
<input type="button" value="Submit" id="myButton" />
<script type="text/javascript">
$(document).ready(function() {
$("#myButton").click(function() {
$("#myForm").submit();
});
});
</script>
所以,底线是创建一个按钮像提交,并把真正的提交按钮在表单(当然隐藏它),并通过jquery通过点击“Fake Submit”按钮提交表单。希望能有所帮助。