2013-07-09 56 views
0

我正在開發一個Web應用程序,我沒有自己創建,它使用Dojo和特別的Dijit完成。 我正在努力的部分是關於取決於單選按鈕而改變的表單。 因此,我使用dijit.byId('id').setAttribute('disabled',true);來禁用一個字段,這對FF工作而對IE8不起作用。雖然它可以工作,但不是直接當我檢查單選按鈕時,我必須再做一個動作(如點擊頁面上的一個隨機區域),然後應用該動作。我嘗試了這樣的東西,如:document.getElementById('id').disabled=true;,但它也無法正常工作。Dojo,setAttribute with Internet Explorer

請問您有什麼建議嗎? 謝謝。

+0

幾個問題:什麼版本的Dojo是它?你試圖調用你的禁用代碼的地方(在哪些函數中)? – David

+0

就這麼你知道,你發佈的兩個「答案」不是答案。不要發佈一個附加問題的「答案」,您可以編輯原始問題或提出另一個問題。在這種情況下,你的第一個關於設置屬性的問題已經得到解答。應該將您的下一個「答案」系列作爲一個單獨的問題。 –

+0

我不打算編輯我​​的第一個問題。在我的第一個問題,答案,其他問題和新答案之間會出現這樣的混亂。我不能作爲評論回答,因爲我的代碼不會顯示爲代碼。 – mentinet

回答

1

Dojo小部件有一個使用set方法設置屬性的約定。

dijit.byId('id').set('disabled',true); 

該公約將呼籲將採取使自己殘疾人護理插件的_setDisabledAttr方法。

http://dojotoolkit.org/reference-guide/1.7/dijit/_WidgetBase.html#attributes

+0

該解決方案也可以工作,但它不能解決我的問題。我點擊我的單選按鈕,直接更改FF中字段的狀態,但我需要再次單擊(無論何處)才能看到IE中的更改。謝謝 – mentinet

0

我們有幾乎相同的問題,因爲你做的。

嘗試使用dijit.registry獲取或設置禁用或啓用的屬性。

我們遇到了測試某個或另一個單選按鈕是否活動的查詢的問題。然後應該一次讀取另一條記錄。 不幸的是,這並沒有與dojo.byId一起工作,所以我們尋找一個解決方案,並找到它在上面dijit.registry中所述。

這裏的鏈接:http://dojotoolkit.org/reference-guide/1.9/dijit/registry.html#dijit-registry

希望它可以幫助你。

問候,Miriam

+0

謝謝,如果我再次遇到這個問題,我會看看它,但到目前爲止,我的問題已通過「onclick」而不是「onchange」解決。 – mentinet

+0

解決的問題是一個很好的問題;-) – MiBrock