2010-05-01 109 views
1

我可以将例如<a href="#">submit</a>的链接转换为表单的提交按钮吗?如果是这样如何?我使用PHP,MySQL,XHTML和CSS。提交按钮问题

+0

Tangurena 2010-05-01 18:55:17

+5

为什么不使用提交按钮? – kennytm 2010-05-01 19:31:19

回答

2

不是一个真正的。

您可以用JavaScript来伪装它,但这违反了Rule 2

你可以使用CSS来使提交按钮看起来像一个链接,但这通常不是一个好主意(虽然仍然比使用JS更好)。用户期望按钮可以提交表单,而链接只需要去某个地方。违反期望是可用性差。

1

用JavaScript你可以做的onclick

jQuery中:

$('theElement').click(function(){ 
// submit the form... 
}); 

编辑:(我写的onclick!)

4

你可以调用提交()的形式。喜欢:

<a href="#" onclick="document.getElementById('myForm').submit();">e</a> 

这是我真的不会推荐的东西,但它是你的问题的答案。

+1

@Francisco Soto:是的,这应该工作,但请注意,这是反对JavaScript的侵扰做法:) – Sarfraz 2010-05-01 20:27:02

+1

是的,这就是我说我不会推荐它:),只是回答了他的问题。 – 2010-05-01 20:46:04

+0

嗯明白了你的观点。 – Sarfraz 2010-05-01 20:53:48

0

您可以使用jQuery不显眼的JavaScript做法,并提交形式:

<form id="form_id"> 
........... 
</form> 

<a href="#" id="submit_link">submit</a> 

的jQuery:

$(function(){ 
    $('#submit_link').click(function(){ 
    $('#form_id').submit();  
    return false; 
    }); 
}); 
-2
<script language="javascript"> 
    function submitform() 
    { 
    document.form1.submit(); 
    } 
</script> 

<form name="form1"></form> 

<a href="javascript:submitform()">Submit</a> 
+0

为什么downvotes?这是否不回答这个问题? – 2011-02-25 17:15:38

-2

(测试Safari和FF/OSX)我家里没有DOS机器。

问题的答案是肯定的。

你这是怎么会是纯JavaScript代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
     <title>Form Submit</title> 
     <script> 
     window.onload = function(){ 
      document.getElementById("linksubmit").onclick = function(){ 
      if(document.getElementById("foo").value != ''){ 
       document.forms[0].submit(); 
        return false; 
      }else{ 
       alert('Please fill in Foo'); 
      } 
      } 
     } 
     </script> 
    </head> 
    <body> 
    <form id="theform" action="index.html" method="post"> 
     <label for="foo">Foo</label> 
     <input type="text" name="foo" id="foo" /> 
     <a href="javascript:void(0);" id="linksubmit">Submit</a> 
    </form> 
    </body> 
    </html> 

而这,你将如何使用jQuery代码是:

$(document).ready(function(){ 
    $("#linksubmit").click(function(){ 
    if($("#foo").val()!=''){ 
    $("#theform").submit(); 
     return false; 
    }else{ 
     alert('Please fill in Foo'); 
    } 
    }); 
}); 

之间的脚本标签的,而不是仅仅用这块第一个例子。还记得添加jQuery源代码。谷歌有一个很好用的托管版本:http://code.google.com/apis/ajaxlibs/documentation/index.html#jquery