如何通过 <a href...>...</a> 链接进行提交?

Posted

技术标签:

【中文标题】如何通过 <a href...>...</a> 链接进行提交?【英文标题】:How to make a submit out of a <a href...>...</a> link? 【发布时间】:2010-09-21 11:05:07 【问题描述】:

我得到一张图片,该图片使用&lt;a href="..."&gt; &lt;img ...&gt; &lt;/a&gt;链接到另一个页面。

我怎样才能让它像按钮&lt;input type="submit"...&gt;一样发布?

【问题讨论】:

【参考方案1】:

这可能是一个方便的补充,可以从额外的按钮更改发布网址,以便您可以使用不同的按钮发布到不同的网址。这可以通过设置表单的“动作”属性来实现。这是使用 jQuery 时的代码:

$('#[href button name]').click(function(e) 
    e.preventDefault();
    $('#[form name]').attr('action', 'alternateurl.php');
    $('#[form name]').submit();
);

action-attribute 在旧 jQuery 版本中存在一些问题,但在最新版本中你会很好。

【讨论】:

$('#[form name]') 应该是 $('form[name=formname]');和 #[href] 的东西应该完全不同【参考方案2】:

我们在表单上一直用这个替换提交按钮:

<form method="post" action="whatever.asp">
<input type=...n

<input type="image" name="Submit" src="/graphics/continue.gif" align="middle" border="0" >
</form>

点击图片提交表单。希望对您有所帮助!

【讨论】:

这个答案与接受的答案有什么不同吗?我们希望避免在 SO 上给出“同样的东西也适用于我”风格的答案。【参考方案3】:

使用 JQuery 库 closest() 和 submit() 按钮的更通用的方法。 在这里您不必指定要提交的表单,提交它所在的表单。

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

【讨论】:

不错的答案,但可能对推荐的做法有所顾虑...***.com/questions/1070760/… 只要确保在需要向上移动 DOM 时使用最接近 () 并在需要向下遍历 DOM 时使用 find() 我会在onclick 的末尾添加一个return false; 以避免滚动到页面顶部。【参考方案4】:
 <html>

 <?php

 echo $_POST['c']." | ".$_POST['d']." | ".$_POST['e'];

 ?>

 <form action="test.php" method="POST">
      <input type="hidden" name="c" value="toto98">
      <input type="hidden" name="d" value="toto97">
      <input type="hidden" name="e" value="toto aaaaaaaaaaaaaaaaaaaa">

      <a href="" onclick="document.forms[0].submit();return false;">Click</a> 
 </form>

</html>


So easy.




So easy.

【讨论】:

【参考方案5】:

不要忘记“按钮”元素,它可以处理更多的 HTML...

【讨论】:

【参考方案6】:

like this page 的东西?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>BSO Communication</title>

<style type="text/css">
.submit 
    border : 0;
    background : url(ok.gif) left top no-repeat;
    height : 24px;
    width : 24px;
    cursor : pointer;
    text-indent : -9999px;

html:first-child .submit 
    padding-left : 1000px;

</style>
<!--[if IE]>
<style type="text/css">
.submit 
    text-indent : 0;
    color : expression(this.value = '');

</style>
<![endif]-->
</head>

<body>
    <h1>Display input submit as image with CSS</h1>

    <p>Take a look at <a href="/2007/07/26/afficher-un-input-submit-comme-une-image/">the related article</a> (in french).</p>
    <form action="" method="get">
        <fieldset>
            <legend>Some form</legend>
            <p class="field">
                <label for="input">Some value</label>

                <input type="text" id="input" name="value" />
                <input type="submit" class="submit" />
            </p>
        </fieldset>
    </form>

    <hr />
    <p>This page is part of the <a href="http://www.bsohq.fr">BSO Communication blog</a>.</p>

</body>
</html>

【讨论】:

【参考方案7】:
<input type="image" name="your_image_name" src="your_image_url.png" />

这将在提交表单时发送your_image_name.xyour_image_name.y 值,它们是用户单击图像位置的x 和y 坐标。

【讨论】:

【参考方案8】:

您似乎正在尝试使用图像来提交表单...在这种情况下使用 &lt;input type="image" src="..."&gt;

如果你真的想使用锚点,那么你必须使用 javascript

&lt;a href="#" onclick="document.forms['myFormName'].submit(); return false;"&gt;...&lt;/a&gt;

【讨论】:

原来旧 MS 办公室的剪辑一直是 Greg!【参考方案9】:

未经测试/可能会更好:

<form action="page-you're-submitting-to.html" method="POST">
    <a href="#" onclick="document.forms[0].submit();return false;"><img src="whatever.jpg" /></a>
</form>

【讨论】:

【参考方案10】:

input type=image 会为你做这件事。

【讨论】:

以上是关于如何通过 <a href...>...</a> 链接进行提交?的主要内容,如果未能解决你的问题,请参考以下文章

js如何通过tagname取到标签并所有该类改变标签的样式

如何通过javascript或jquery更改href? [复制]

如何使用css通过href #id隐藏锚标签

如何通过django html按钮执行python代码?

如何通过Python代码登录SAP时检查错误

如何通过 href 传递值 - PHP