2009-11-17 16 views
13

如果禁用JS,任何從鏈接提交POST請求的方法?如何從沒有JS的鏈接進行HTTP POST

Ideeas到目前爲止,(他們都不完美)

  1. 使用<輸入類型= '提交>,但我需要一個鏈接不是一個按鈕
  2. 使用< A HREF =' '的onclick =' 形式.submit()」 >但依賴於JS
  3. 使用<輸入類型= '形象' > ... ..又不是一個真正的鏈接

我需要一個沒有JS的瀏覽器的回退方法,並且我的這些「按鈕」區域對於按鈕或圖像來說太小

回答

14

如果你想使用CSS,你可以使按鈕看起來像一個普通的鏈接?

也許這樣的事情?

<style type="text/css" media="screen"> 
input { 
    border: none; 
    background: none; 
    color: #00f; 
    text-decoration: underline; 
    cursor: pointer; 
    display: inline; 
    margin: 0; 
    padding: 0; 
} 
</style> 

Click <input type="submit" value="here"/>! 

編輯補充:下面的CSS只是如何威力工作,雖然不是看一遍測試爲例,使它看起來像你可能需要調整有點正常的環節之一。

1

不,沒有。

鏈接負擔得起的地方。按鈕可以在某處發送數據。

如果您想要使用鏈接發出POST請求,那麼您要麼向用戶發送令人困惑的信號,要麼您的後端設置爲該任務使用錯誤類型的HTTP請求。

+7

除了第一句話之外,大多數情況在「Web 2.0」時代不再是真實的。如今,如果數據在沒有按鈕按下的情況下發送到某個地方,人們並不會感到驚訝。 –

+1

我同意鏈接應該只是鏈接的地方,但實際情況是我們使用CSS鏈接作爲日常使用的按鈕。他們往往看起來更一致的跨操作系統和瀏覽器,我們可以使用更好:懸停,:禁用等國 – Radu094

+1

這個問題並沒有問,如果它是正確的網絡禮儀。它問是否可能,並與css它是... – ftrotter

2

我能想到的一個解決方案是在頁面上放置一個帶有按鈕樣式的窗體,使其看起來像文本鏈接。

當啓用Javascript時,您可以優雅地隱藏此表單並允許普通鏈接進行預防性處理,如果禁用Javascript,則允許用戶仍然使用該系統。