我想要一个锚点应该像输入类型提交按钮一样

i want a anchor should act like and input type submit button

本文关键字:类型 输入 提交 一样 按钮 一个 我想要      更新时间:2023-09-26

我想要一个锚点应该像输入类型提交按钮一样。我正在使用一个实际上使用输入类型提交的 jquery 插件库,但我在锚点上设置了按钮的样式。我不想使用

<input type="button">

<input type="submit">

我想使用锚点,例如

<a href="javascript to submit the form" ></a>

这是我想要使用的jquery代码

 {
     var submit = $('<button type="submit" />');
     submit.html(settings.submit);                            
 }
 $(this).append(submit);
 }
 if (settings.cancel) {
     /* if given html string use that */
     if (settings.cancel.match(/>$/)) {
         var cancel = $(settings.cancel);
         /* otherwise use button with given string as text */
     } else {
         var cancel = $('<button type="cancel" />');

如何使用锚点而不是按钮。

如果您希望

锚标记像按钮一样起作用,只需执行此操作

<!--YOUR FORM-->
<form id="submit_this">.....</form>
<a id="fakeanchor" href="#"></a>
<script>
    $("a#fakeanchor").click(function()
    {
    $("#submit_this").submit();
    return false;
    });
</script>

由于您使用的是 jQuery,只需使用 $() 来选择 form 元素,并在其上调用 submit; 通过 $() 将所有这些挂接到锚点以找到锚点,并click挂接处理程序:

$("selector_for_the_anchor").click(function() {
    $("selector_for_the_form").submit();
    return false;
});

可能最好return false;取消对锚点的点击。


题外话:但请注意,如果没有 JavaScript,这会使您的页面完全无法使用,并且即使对于需要辅助技术(屏幕阅读器等)的用户使用的启用 JavaScript 的浏览器也会使其混淆。它使标记完全没有语义。但既然你已经说得很清楚了,这就是你想做的......

<a id='anchor' href="javascript to submit the form" ></a>

现在您可以使用 jQuery 添加事件处理程序

$('#anchor').click(function (e) {
  // do some work
 // prevent the default anchor behaviour
 e.preventDefault();
})

现在,您可以根据需要设置锚点样式,它将充当常规按钮

那呢:

<form id="formOne">
        ...
   <a href="..." onclick="formOne.submit()">link here</a>
</form>

您可以使用 image 类型的输入(它用作表单的提交按钮)或在 jquery 中:

$("a").click(function(event){
   event.preventDefault();
   $('form').submit();
})