2012-01-22 113 views
0

我正在嘗試將標識綁定到標識。不知道我是否應該做一個綁定 但我希望我的例子可以幫助解釋我正在嘗試做什麼。 我有循環一個PHP這給了我一連串的數字如何使用鏈接獲取值

<?php 

     for($value = 1; $value <=5; $value++){ 
     print '<br><form><input id="hidden" type="hidden" value="'.$value.'" /><a id="link">click here</a><form>'; 
     } 
     ?> 
在我的HTML

我有當執行HTML while循環的表單中的一個字段的看起來像這樣

<input id="hidden" type="hidden" value="1" /><a id="link">click here</a> 
<input id="hidden" type="hidden" value="2" /><a id="link">click here</a> 
<input id="hidden" type="hidden" value="3" /><a id="link">click here</a> 

我的目標這是。如果我點擊第一個'點擊這裏'我想要輸出隱藏值1 如果我點擊第二個'點擊這裏'我想輸出隱藏值爲2等..我的問題 是,當我點擊在任一鏈接上,我只收回第一個'點擊此處'的值,即1

這是我的jQuery代碼。

<script> 
$(document).ready(function(){ 
    $("a#link").click(function(){ 
    var s = $('.hidden').val(); 
alert(s); 
}); 
}); 
</script> 

感謝您的幫助提前...

+1

你不能對'hidden'&'link'使用3次相同的id,用class代替。 – Sotiris

回答

1

從來沒有使用相同的id更迭之類

<input id="hidden" type="hidden" value="1" /> 
<a class="link" href="#">click here</a> 
<input id="hidden" type="hidden" value="2" /> 
<a class="link">click here</a> 
<input id="hidden" type="hidden" value="3" /> 
<a class="link">click here</a> 

和jQuery的部分已經被@DavidGouge

回答
$("a.link").click(function(e){ 
    e.preventDefault(); 
    var s = $(this).prev("input").val(); 
alert(s); 
}); 

DEMO

0

ID應該是唯一的,您可以使用class='hidden'而不是id="hidden",並且在您使用的函數var s = $('.hidden').val()中,但在表單中沒有'hidden'類。