Html 使用普通链接提交表单

Html 使用普通链接提交表单,html,css,forms,hyperlink,submit,Html,Css,Forms,Hyperlink,Submit,我想提交一份表格。但我不会使用带有提交类型的输入按钮,而是一个链接 下图显示了原因。我正在使用图像链接保存/提交表单。因为我有用于图像链接的标准css标记,所以我不想使用输入提交按钮 我尝试将onClick=“document.formName.submit()”应用于a元素,但我更喜欢html方法 有什么想法吗?两种方法。创建一个按钮并将其设置为css链接的样式,或者创建一个链接并使用onclick=“this.closest('form').submit();return false;”您

我想提交一份表格。但我不会使用带有提交类型的输入按钮,而是一个链接

下图显示了原因。我正在使用图像链接保存/提交表单。因为我有用于图像链接的标准css标记,所以我不想使用输入提交按钮

我尝试将onClick=“document.formName.submit()”应用于a元素,但我更喜欢html方法


有什么想法吗?

两种方法。创建一个按钮并将其设置为css链接的样式,或者创建一个链接并使用
onclick=“this.closest('form').submit();return false;”

您正在使用图像进行提交。。因此,您可以简单地使用
type=“image”
input“按钮”:


据我所知,如果没有某种形式的脚本,您就无法真正做到这一点

<form id="my_form">
<!-- Your Form -->    
<a href="javascript:{}" onclick="document.getElementById('my_form').submit(); return false;">submit</a>
</form>

示例来自。

使用:

<input type="image" src=".."/>

或:

+任何html代码

再加上一些CSS,像这样设计一个
输入类型=“submit”
对我来说很有用:

.link按钮{
背景:无;
边界:无;
颜色:#1a0dab;
文字装饰:下划线;
光标:指针;
}

毫无疑问,使用纯HTML提交带有链接(
a
)标记的表单是没有解决方案的。标准HTML只接受按钮或图像。正如其他一些合作者所说,可以使用按钮模拟链接的外观,但我想这不是问题的目的

IMHO,我认为提议和接受的解决方案不起作用

我在一个表单上测试了它,但浏览器没有找到该表单的引用

因此,可以使用一行JavaScript来解决这个问题,使用
这个
对象,它引用被单击的元素,它是表单的子节点,需要提交。因此,
this.parentNode
是表单节点。之后,它将以该形式调用
submit()
方法。没有必要从整个文档中进行研究以找到正确的形式

<form action="http://www.greatsolutions.com.br/indexint.htm"                   
   method="get">
    <h3> Enter your name</h3>
    First Name <input type="text"  name="fname"  size="30"><br>
    Last Name <input type="text" name="lname" size="30"><br>
    <a href="#" onclick="this.parentNode.submit();"> Submit here</a>
</form>
此解决方案显然适用于任何接受
onclick
事件或类似事件的标记

是一个很好的选择,可用于恢复上下文(在所有主要浏览器和IE9以后的版本中都可用),该上下文可直接使用或作为参数传递给函数

在这种情况下,使用指示已启动事件的元素的属性
target
,将带有
标记的行替换为下面的行

<a href="#" onclick="event.target.parentNode.submit();"> Submit here</a>

您可以使用
OnClick=“document.getElementById('formID\u NOT\u NAME').SUBMIT()”

使用按钮和css来显示图像或使用javascript,没有真正的方法可以让简单的href在没有javascript的情况下提交表单。我认为,不幸的是,没有javascript这不是一种简单的方法。你这样做的理由听起来像是一种虚假的经济。更好的方法是为提交按钮设计一个标准css,并按照设计的方式使用表单。这里有一堆按钮css技术描述:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
如果没有JavaScript@baptx即使是旧的智能手机也已经启用了javascript@MahdiJazini很多人在默认情况下禁用JavaScript,这可能会造成干扰,在某些情况下会影响性能。如果JavaScript失败,它可能会破坏整个网站(例如,使用CDN而没有本地回退,并且第三方域被阻止)。如果出现HTML错误,您仍然可以使用该网站。开发人员应该遵循渐进增强原则。如果您想支持没有javascript的用户,请执行本答案中描述的第一个选项,将按钮样式设置为链接。例如
input[type=submit]。链接{边框:无;背景:无;显示:内联;颜色:蓝色;文本装饰:下划线;}
…或一个包含
元素的
元素。以下是MDN链接,以防其他人需要源代码:仅供记录:您应该使用CSS选择器选择适当的
输入
元素,而无需将类附加到HTML元素。尽管您的注释是首选方式,这并不总是可能的为什么这是首选的方式?这是一个半建立的编码实践,通常会留下更干净的html。。。但这不是一个大交易,这个答案也不依赖于javascript,这是一件不必担心的事情,亲爱的访问者。。。别忘了设置>>>id=“my_form”它的id不是name:d这应该是最好的明确答案,谢谢@Nathan,我在
Stackoverflow
中没有太多的写作练习。我希望你的改正能帮助我改进我的风格。我的英语也不好。
<form action="http://www.greatsolutions.com.br/indexint.htm"                   
   method="get">
    <h3> Enter your name</h3>
    First Name <input type="text"  name="fname"  size="30"><br>
    Last Name <input type="text" name="lname" size="30"><br>
    <a href="#" onclick="this.parentNode.submit();"> Submit here</a>
</form>
<a href="#" onclick="event.target.parentNode.submit();"> Submit here</a>