有你需要檢查幾件事情:
- 確定按鈕被解析?查看HTML源代碼並驗證按鈕的HTML代碼是否仍與您提供的代碼相同。當Dojo解析HTML代碼時,它通常會將HTML代碼更改爲更復雜的代碼。如果你沒有那麼複雜的代碼,你的小部件不會被Dojo拾取。
- 你輸入了正確的CSS文件嗎?您需要確保您導入了正確的CSS文件,例如
claro.css
。
- 是否有任何父元素具有主題類名稱?如果您使用claro主題(例如),則需要確保您的類名
claro
處於某個地方,通常位於您的body
標籤中。
編輯: 更多的事情來檢查:
你有你的require()
dijit/form/Button
?假設你正在使用的Dojo 1.6(因爲你正在使用的舊dojoType
),你需要的代碼是:
dojo.require("dijit.form.Button");
是您的按鈕加載異步或不?如果它是異步加載的,則在加載頁面時不會分析您的節點。這意味着你必須通過在<div>
包裝您的按鈕手動異步並手動解析DIV,例如:
<div id="toParse">
<input onclick="createLoader(); dojoType="dijit.form.Button" try{//some Ajax calls};return false" type="button" value="Search">
</div>
而且在JavaScript:
dojo.parser.parse("toParse");
1.我的代碼不會被解析。沒有任何Dojo代碼存在。 2. Claro.css在那裏。所有其他組件正在工作。 – Jacob
然後你必須找到你的Dojo代碼沒有被編譯的原因。 'require()'塊中的'dijit/form/Button'?我對Grails不是很熟悉,但加載的內容是異步的? – g00glen00b
這是禮物:dojo.require('dijit.form.Button'); – Jacob