工作,我有一個禁用的按鈕一些代碼,使用jQuery它:jQuery的禁用=禁用未在Safari
$('#fishID').attr('disabled', 'disabled');
這似乎在每一個瀏覽器(IE6,IE7,8,9,Chrome的工作, Firefox),但Safari不會禁用該按鈕。
我應該把它設置爲'disabled', 'true'
?有什麼不同?
是否有Safari的怪癖可能解釋這不工作?
工作,我有一個禁用的按鈕一些代碼,使用jQuery它:jQuery的禁用=禁用未在Safari
$('#fishID').attr('disabled', 'disabled');
這似乎在每一個瀏覽器(IE6,IE7,8,9,Chrome的工作, Firefox),但Safari不會禁用該按鈕。
我應該把它設置爲'disabled', 'true'
?有什麼不同?
是否有Safari的怪癖可能解釋這不工作?
1.6+你應該使用.prop('disabled', true);
,這應該適用於所有。
不,可能是jQuery。我相信這固定在1.6。
我花了這個時間。以下是我所學到的:
disabled =「disabled」在ie6/7中不起作用,當您使用jQuery動態更改屬性時。
解決此問題的唯一方法是克隆select,添加disabled屬性(或刪除它),然後再追加。
例子:
//clone dropdown and append for ie support
var _parent = $("#selectElement").parent();
var _clone = $("#selectElement");
$(_clone).attr("disabled","true");
$("#selectElement").remove();
$(_parent).append(_clone);
啊哈我看 - 然後我外行的解釋是,屬性是你所擁有的標記,該屬性無論是存儲在內存中。更改屬性不應該影響它是否被禁用,您必須更改屬性 - safari是唯一符合標準的/足以關注此問題的瀏覽器。這是你想要的財產,這就是爲什麼這個答案是正確的。 – NibblyPig