2011-11-16 186 views
0

我遇到了按鈕的問題。我對回波線做了一個相對簡單的改變,突然間我提交一個表單的按鈕有一個空白值。只有當我做出這個改變時。是的,我知道「提交」的重複ID,但這不是我的代碼,並且可以在使用重複ID的其他頁面上正常工作。提交按鈕值消失

echo "<div id='divswipe'> 
    <p><input type='text' name='".$count3."' id='swipe' maxlength='7' /> <label for='swipe'>Please Enter User's ULID</label></p> 
</div> 
<p><input id='swipe' type='submit' value='Submit' /></p></form>"; 

此代碼將顯示「提交」的值,沒有問題。

echo "<div id='divswipe'> 
    <p><label for='swipe'>Please Enter User's ULID</label></p> 
    <p><input type='text' name='".$count3."' id='swipe' maxlength='7' /> <input id='swipe' type='submit' value='Submit' /></p> 
</div></form>"; 

如果將其更改爲此,提交值的值爲空白。這很奇怪。如果有幫助,我可以提供上述信息的CSS。我曾試圖谷歌爲什麼提交按鈕的價值消失在頁面的顯示,但沒有發現任何信息。任何幫助是極大的讚賞。謝謝!

編輯 無視。我道歉。我發現了這個問題。編碼頁面的人爲它添加了一些jQuery,這反過來又通過滑動的名稱消隱了ID的價值。由於他使兩種輸入類型共享「滑動」作爲ID,因此它消隱了正確值的值,同時消隱了按鈕的值。我在他的jQuery中添加了一個「::submit」,排除了非文本輸入類型(即它忽略了收音機,複選框,選擇,現在還提交了按鈕)。有用。如果我浪費了任何人的時間,我很抱歉!

+0

請說明一下,這是最有效的方法嗎? – gkiar

+1

FWIW,你不應該給你的文本和提交按鈕相同的ID('刷卡')。 – thinice

+0

是的,現在ID是一樣的,就像我說的,因爲這是另一個人的代碼。我正在製作他製作的網頁,並且我已經告訴過他重複的ID。他現在需要他們這樣的邏輯來解決這個問題,但有人談論重新做邏輯來解決這個問題。 頂端代碼=正常工作的代碼。第二個代碼塊是用於調整值的代碼。 – ubelong2matt

回答

2

表單數據基於名稱,而不是ID。給提交元素(技術輸入元素的類型提交)一個名稱。

編輯:我想我誤解了這個問題。如果問題在於按鈕上的文本未顯示,請確保HTML驗證。這可能是一個不匹配的報價。它也可以是粉碎按鈕寬度或以某種方式轉換文本的CSS。也許嘗試使用Chrome的調試面板或Firefox中的Firebug來檢查按鈕的樣式。

+0

這沒有奏效。我分配了提交名稱='submitbutton',它仍然從按鈕中刪除了該值。這可能是其他地方的邏輯的PHP問題。我只是設計師,但我想通過HTML代碼來匹配不同的位置會更容易! – ubelong2matt

+0

我使用Firebug,這是我看到的代碼在頁面上字面顯示爲value =「」。當頁面呈現時,它完全刪除了提交按鈕的值,但我找不到原因。我爲這個頁面的按鈕提交了一個寬度:100px,並且它使得按鈕更寬,但是沒有顯示任何東西。 – ubelong2matt

+0

這絕對聽起來像一個不匹配的報價引起的問題。你能複製並粘貼一小段輸出到一個新的頁面,看看它是否正確顯示?如果是這樣,那麼它幾乎肯定是一個報價問題(或者至少在某處使用無效的html)。 – Corbin

0

您可能會遇到「請輸入用戶的ULID」中的單引號問題。刪除它,看看是否有效。

+0

可以在HTML中使用單引號或雙引號,並且在這種情況下用於代替轉義用於PHP代碼的雙引號。感謝您的答案,但它真的是來自編碼的人的「嗯」,並沒有提到他添加了jQuery,這會影響按鈕。 – ubelong2matt