2011-12-10 7 views
-2

私は多くのリンク(約17)を含むHTMLフォームを持っています。私は、リンクがクリックされると、そのフォームのリンク内の同じIDを使用して送信されます。フォーム要素リンクはボタンとして機能します

<form id="form" action="some page.php"> 
<a href='?value=0'>value 1</a><br /> 
<a href='?value=1'>value 2</a><br /> 
<a href='?value=2'>value 3</a><br /> 
<a href='?value=3'>value 4</a><br /> 
<a href='?value=4'>value 5</a><br /> 
*********************** 
**** CLIPPED **** 
*********************** 
<a href='?value=16'>value 17</a><br /> 
</form> 

リンクを押すと、同じページindex.php?value=some numberに送られます。私は各リンクにある値/ IDを持っていて、クリックするとフォームが提出され、some page.phpに送られます。

これは可能ですか?

+1

なぜフォームを使用していますか?そこにもフォーム要素がありますか? – PeeHaa

+0

@PeeHaa:フォームにはリンクのみが含まれており、「

+1

フォーム要素を使用しない場合、なぜフォームが必要ですか?そして、あなたは 'ボタン'のように行動することで何を意味しますか? – PeeHaa

答えて

2

<a href="javascript:submit(17)">value 17</a> 

または

<input type="hidden" name="myvalue"> 

は、その後、あなたのリンクではJavaScriptを使用します。

<form id="form" name="myform" action="some page.php"> 

は隠しフィールドを追加します。

<a href='#' onclick="submit(17)">value 17</a> 

そして最後には、JavaScriptを書く:

<script language="javascript"> 
function submit(value) { 
    document.myform.myvalue.value = value; 
    document.myform.submit(); 
} 
</script> 

フォームに一つだけのフィールドが含まれている場合、あなたはまた、値を持つ単純なリンクを使用することができます。

<a href="some page.php?value="17">value 17</a> 
+0

あなたの答えはeljuniorの答えに似ていますが、私はコード(フォーム名、愚かな私!)の間違いを見せても、私はフォームの方法を忘れていた:D – sikas

1

リンク先はsomepage.php?value=1です。

編集:申し訳ありませんが、私は間違っています!ここでは、正しい答えは:隠れ変数を設定して、フォームを送信するためにJavaScriptを使用します。

<input type="hidden" name="value" /> 
<a onclick="this.form.value=1; this.form.submit();">value 1</a> 
<a onclick="this.form.value=2; this.form.submit();">value 2</a> 
+0

私はこれを知っています。しかし、私はそれを行うための他の方法を探しています。選択肢にはリンクの見た目がありますが、「

+1

のように行動してください。彼があなたに与えたことは、私が知る限り、あなたが探しているものです。 –

+0

いくつかのCSSでリンクのスタイルを設定する必要があります。この記事をチェックしてください:http:// www。oscaralexander.com/tutorials/how-to-make-sexy-buttons-with-css.html – elias

0

あなたは裸のスペースが許可されていないことを除いて、その他のhref =「=いくつかのpage.php値を?」を使用することができますURLにしかし、これは単なるリンクであり、フォーム提出ではありません。フォームの提出を希望する場合は、input type = submitまたはbutton type = submitエレメントを使用します。最も簡単な方法は、type = submitとvalueパラメータを入力することです。しかし、実際の問題(説明から推測できない)は、まったく異なる解決策を持つ可能性があります。

あなたのフォームに名前を使用する必要があります
0

をこれは、リンクのように見えるが、Aは、ボタン。あなたは訪問されたリンクの色の利点を得ることはありませんが、私はこれがあなたが探していると信じています。

http://jsfiddle.net/KtZPW/3/

関連する問題