我想一个锚应该表现得像输入类型提交按钮

时间:2011-05-22 08:21:50

标签: javascript html

我想要一个锚应该表现得像输入类型提交按钮。 我正在使用一个实际使用输入类型提交的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" />');

如何使用锚点代替按钮。

5 个答案:

答案 0 :(得分:16)

如果您希望锚标记像按钮一样,只需执行此操作

<!--YOUR FORM-->
<form id="submit_this">.....</form>
<a id="fakeanchor" href="#"></a>

<script>
    $("a#fakeanchor").click(function()
    {
    $("#submit_this").submit();
    return false;
    });
</script>

答案 1 :(得分:3)

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

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

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


偏离主题:但请注意,这会使您的网页在没有JavaScript的情况下完全无法使用,并且即使对于需要辅助技术的用户使用的支持JavaScript的浏览器(屏幕阅读器等)也会让您感到困惑。它使标记完全不具有语义性。但是,既然你已经说清楚这就是你想要做的......

答案 2 :(得分:2)

<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();
})

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

答案 3 :(得分:2)

那怎么样:

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

答案 4 :(得分:1)

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

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