2013-02-24 77 views
0

有沒有一種方法可以區分具有相同名稱的值?關於具有相同名稱的輸入的問題

<input type="hidden" name="id" value="name1"> 
<input type="hidden" name="id" value="name2"> 
<input type="hidden" name="id" value="name3"> 

有沒有一種方法,當我發佈一個ID,將被張貼的值將是name2?

+0

爲什麼你給多個元素同名? – Rikesh 2013-02-24 12:58:04

+2

將名稱更改爲'id []',以便將它們視爲數組。 – hjpotter92 2013-02-24 12:58:28

+0

你的目的是什麼?從頁面到頁面傳遞一些參數?你如何區別它們?考慮保存到db/cookies/session? – lvil 2013-02-24 13:00:50

回答

0

對不同的變量使用不同的名稱。

<input type="hidden" name="id2" value="name2"> 
+0

即時通訊實際上使用while循環來創建輸入,因此所有名稱都是相同但不同的值。無論如何,我可以區分它具有相同名稱的價值嗎? – user2102316 2013-02-24 13:02:57

0

不,你不能這樣做。您需要指定不同的名稱 或使用類似於數組的東西。 這可以通過設置名稱id []來完成。

你想要做什麼?

您可以使用javascript設置隱藏字段dynamicaly的值,如果這是您正在尋找的。

2

使用陣列的名稱

<input type="hidden" name="id[]" value="name1"> 
<input type="hidden" name="id[]" value="name2"> 
<input type="hidden" name="id[]" value="name3"> 

,其提供在陣列中的所有的值。

希望得到這個幫助。

+0

我試圖設置名稱作爲數組,但是當我回聲$ _POST ['id']; 將要發佈的值是數組。 – user2102316 2013-02-24 13:07:11

+0

@ user2102316準確地說,所以它可以用'$ _POST ['id'] [0]'爲第一個訪問,併爲每個額外的一個增加'[0] ...'或使用'foreach'循環或其他類似。 – Jon 2013-02-24 13:21:01

+0

您需要循環訪問數組,並使用值進行操作。嘗試像'foreach($ _ POST ['id'] as $ id){doStuff(); }' – adamdunson 2013-02-24 13:22:29