2010-11-01 51 views
0

可能重複:
jQuery change input type如何使用jQuery替換input [type = submit]輸入[type = text]?

如何更換輸入[類型=提交]輸入[類型=文本]使用jQuery?

這樣開不工作:

$('input[type=submit]').removeAttr('type').attr('type','text'); 
+0

你有包裹在準備處理您的代碼? – Sarfraz 2010-11-01 10:24:01

+0

不要這樣做:它會導致問題。改爲移除並重新創建元素。 – 2010-11-01 10:24:08

+0

可能有別的辦法嗎? – Algorithm 2010-11-01 10:27:53

回答

6

您不能更改屬性類型(不知道爲什麼,但這是螢火蟲日誌),所以你能做的最好的事情是完全刪除輸入元素並插入正確類型的新輸入。

使用jQuery像這樣的東西:

$('input[type=submit]').after("<input type='text' />"); 
$('input[type=submit]').remove(); 
+1

jQuery禁止更改它,因爲IE瀏覽器不會讓你這樣做(並且創建一個解決方法(http://webbugtrack.blogspot.com/2007/09/bug-237-type-is-readonly-attribute-in.html)因爲這將是相當痛苦的) – scunliffe 2010-11-01 10:32:32

+0

你用什麼來檢查Firebug中的這個限制。您使用哪個選項卡來調試此問題? – 2010-11-01 10:33:38

+0

我在控制檯選項卡中看到它。我已經做了一個JsFidde來測試這個,在那裏你可以看到日誌說明它:[jsFiddle更改類型屬性時的firebug日誌錯誤](http://jsfiddle.net/fXR44/1/) – 2010-11-01 10:35:32

相關問題