2010-12-19 26 views
1

我有一個表格,我想用它們作爲報告視圖和表格。最初,文本輸入(文本和文本區)的樣式不具有邊框/背景。我也用下面的jQuery代碼,以確保他們會拒絕焦點:jQuery黑客在Opera中失敗,替代?

$('input[type="text"], textarea').focus(function() { 
    $(this).blur(); 
}); 

這個工作在Firefox,但它在Opera沒有做(也許其他WebKit瀏覽器)。我不想使用disabled屬性,因爲那樣我就無法將輸入設置爲不顯眼(一般意義上)。我可以隱藏輸入並在狀態爲view的位置顯示一個span或div,然後在狀態更改爲form時交換visible-hidden屬性,事實上,我正在爲選擇,單選按鈕和複選框執行此操作。但如果我能夠按原樣運作,那麼這樣做的工作量就會減少。有什麼建議麼?

編輯 - 刪除webkit標籤,謝謝你Fylke。

+1

什麼是'$ this'?你的意思是'這個'? – 2010-12-19 17:56:30

+0

@Pekka - 哦,是的,除了其他人以外,這是一個錯字;)。在原始代碼中是正確的,我將編輯並更正,謝謝。 – 2010-12-19 18:03:48

+1

只是想指出,Opera不是一個webkit瀏覽器,也許這不是你所暗示的,但它確實看起來像它。 – Fylke 2010-12-19 18:07:49

回答

4

爲什麼不使用the "readonly" attribute而不是「disabled」?將「只讀」設置爲true不會改變字段的外觀(這意味着您可以使用CSS來完成此操作),但它可以防止修改。

也就是說,當您的字段值佔用比分配在佈局上更多的空間時,這種重新使用佈局的方法可能會有問題。當他們是可編輯的文本字段時,用戶通常會理解他們可以滾動該值,但當字段看起來不像字段時,這變得很奇怪。

+1

採取了添加鏈接的自由。 – 2010-12-19 18:09:21

+0

+1謝謝!如果那是堆棧裏的東西,你會成爲一個拯救生命的人!接受後不久(測試後)) – 2010-12-19 18:10:15

+0

謝謝@TJ!我只是在尋找一個很好的簡潔描述。 (除了我之外,其他人還在使用古老的blooberry.com HTML文檔嗎?) – Pointy 2010-12-19 18:10:30