Кажется, что Tree.js
не позволит вам установить атрибуты для куки.Поэтому мне просто нужно было переписать метод _saveState()
для Tree
:
var treeControl = new dijit.Tree({
model: treeModel,
showRoot: false,
openOnClick: false,
cookieName: "OrganizationUnitTreeState",
_saveState: function(){
// summary:
// Create and save a cookie with the currently expanded nodes identifiers
// Overre the default saveState function, so we can set the cookie path
if(!this.persist){
return;
}
var ary = [];
for(var id in this._openedItemIds){
ary.push(id);
}
dojo.cookie(this.cookieName, ary.join(","), {expires:365, path:"/"});
},
/* Many more methods */
});
Это последняя строка кода, которая добивается цели.dojo.cookie()
принимает список пар ключ / значение, которые будут преобразованы в атрибуты cookie, поэтому, если вы хотите установить другие атрибуты, вы так и сделаете.