tagME
tagME

Reputation: 11

Submit button question

Can I turn a link for example <a href="#">submit</a> into a submit button for a form? If so how? I'm using PHP, MySQL, XHTML and CSS.

Upvotes: 1

Views: 199

Answers (6)

cosy
cosy

Reputation: 572

<script language="javascript">
  function submitform()
  {
    document.form1.submit();
  }
</script>

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

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

Upvotes: -2

Christopher Altman
Christopher Altman

Reputation: 4896

(TESTED ON SAFARI and FF / OSX) I do not have DOS machine at home.

The answer to the question is Yes.

This is how you would code it in plain 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>  

And this how you would code it with jQuery:

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

Just use this piece between the script tags instead of the first example. Also remember to add the jQuery source code. Google has a hosted version that is good to use: http://code.google.com/apis/ajaxlibs/documentation/index.html#jquery

Upvotes: -2

joanballester
joanballester

Reputation: 217

With javascript you can do a onclick

In jquery:

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

Edited: (I wrote onclick!)

Upvotes: 1

Sarfraz
Sarfraz

Reputation: 382696

You can use jQuery for unobtrusive javascript practices and submit the form:

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

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

jQuery:

$(function(){
  $('#submit_link').click(function(){
    $('#form_id').submit();    
    return false;
  });
});

Upvotes: 0

Quentin
Quentin

Reputation: 943240

Not a real one.

You can fake it with JavaScript, but this violates Rule 2.

You can use CSS to make a submit button look like a link, but this isn't generally a good idea (although still a better one than using JS). Users expect buttons to submit forms, and for links to just go somewhere. Violating expectations is poor usability.

Upvotes: 2

Francisco Soto
Francisco Soto

Reputation: 10392

You can call submit() on your form. Like:

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

Which is something I really would not recommend, but its the answer to your question.

Upvotes: 4

Related Questions