2014-04-19 31 views
0

我正在寫一個驗證表單的小腳本。Dojo v1.6 dojo.attr()返回NULL

下面的代碼...

alert(dojo.query(dojo.query(requiredItem).parent('form')).children('.' + settings['confirmEmailClass'])); 

...返回預期的輸入元素,但是,當我試圖讓使用它作爲節點,我的工作的一個屬性,它總是返回NULL ...

alert(dojo.attr(dojo.query(dojo.query(requiredItem).parent('form')).children('.' + settings['confirmEmailClass']), 'value')); 

我確定我正在檢查的屬性存在。我習慣於使用jQuery,所以我的一些鏈接可能會很長時間,任何提示都會有所幫助。

注意:我僅限於在此項目中使用Dojo v1.6。

謝謝。

編輯:該接縫dojo.attr()返回一個數組,(我猜是因爲我被類查詢?),如果我這樣做......

alert(dojo.attr(dojo.query(dojo.query(requiredItem).parent('form')).children('.' + settings['confirmEmailClass'])[0], 'value')); 

...我得到了什麼我在尋找。有沒有更好的方法,我應該按班級檢查屬性?

+0

你能與具有語義的名字打破了這一點到變量?這一行很難閱讀。 –

回答

0

dojo.attr沒有返回數組,但dojo.query總是這樣做。 更改代碼,這應該幫助:

alert(dojo.attr(dojo.query(dojo.query(requiredItem)[0].parent('form'))[0].children('.' + settings['confirmEmailClass'])[0], 'value'));