2013-06-13 31 views
9

如何使用链接替换提交按钮而不使用JavaScript?有什么方法可以将提交属性添加到链接?因为表单不会通过没有“提交”的简单链接发送。提交表单使用<a>锚点元素,没有javascript

<form:form action="/getPage" > 
    <div class="buttons"> 

     <a class="link" href=""> 
      <img src="icon.png" /> 
     </a> 

    </div>   
</form:form> 

我在一个应用程序的网络工作,所以如果我使用JavaScript的链接不会被服务器映射..

+1

http://stackoverflow.com/questions/ 1367409 /如何使按钮看起来像一个链接 – Sanath

+1

如果你让你的*按钮*链接,请确保谷歌和其他搜索引擎不通过你的网页。您不希望由搜索引擎触发*删除链接*。 –

+0

真正的问题是:为什么你必须使用''来提交表格? “”或“

回答

22

单独使用<a>标签无法提交表单。您需要某种类型的JavaScript的协助,如果你坚持使用<a>标签:

<a href="#" onclick="$(this).closest('form').submit()">Submit the Form</a>

<a href="#" onclick="document.getElementById('form-id').submit()">Submit the Form</a>

或超级黑客:

<a href="backendPage.php?param1=yes&param2=no">Submit the Form</a>,然后在backendPage.php上,您可以使用$_GET请求来处理信息,并且将访问者重定向到预定页面。但是,这是一个可怕的想法,哈哈

+0

干草你好男人,我用这种方法,它工作正常,但没有工作,当我改变href值为空字符串(href =“”),你能告诉我什么是#的意义... ... – fazkan

+0

嗨@fazkan ,''href =“#whatever”告诉浏览器改变URL中的散列值,这通常意味着没有页面重新加载(不包括角度等)。一个空的'href'属性将与指向当前页面的相同,该页面将重新加载页面。或者,您可以完全删除'href'属性,并使用CSS'cursor:pointer'使鼠标悬停看起来像一个链接。 –

1

这可以实现同样的努力,它看起来像<a>

注:btnbtn-link来自bootstrap

<button class="btn btn-link" type="submit"><img src="icon.png" /></button>