2010-11-06 137 views
2

無論出於何種原因,這條dojo工作不起作用。我必須承認,雖然我對道場相當陌生。無法讓dojo.place工作

dojo.query("#addIngredient").onclick(function(){ 
     var ingredients = dojo.query(".ingredients"); 
     var cloned = dojo.clone(ingredients); 
     dojo.place(cloned, dojo.query("#placeBefore"), "before"); 
    }); 

在Firebug中,dojo.query和dojo.clone事件似乎是工作的罰款,它只是被在dojo.place混淆。這是html:

<input type="button" id="addIngredient" value="Add ingredient" /> 
    <div class="ingredients"> 
    //some code 
    </div> 
    <div id="placeBefore" style="clear:both; height: 1px;"></div> 

任何想法爲什麼這不工作?

回答

5

dojo.place的第二個參數需要一個れ或ID,而不是一個節點列表(這是你提供什麼它,因爲你正在使用dojo.query那裏)。

您可以輕鬆地簡化了該行的代碼下面,它應該工作:

dojo.place(cloned, "placeBefore", "before"); 

參考:http://www.dojotoolkit.org/api/dojo.html#dojo.place