0

我的问题是访问集合中的模型函数。

我有一个这样的元素结构:

  • 内容列表(集合)
    • 内容(型号)
      • svg结构(模型)
      • svgParameterList(集合)
        • css样式(函数)
        • svgParameter(模型)
          • 改变风格(功能)

mContent=新内容列表();

我想从我的 contentList 对象中调用 changeStyle 函数。我试过这个,但它不起作用

 valToSave = mContent.get(ici)  
 monstyle=valToSave.get("svgParameterList")  
 lulu=monstyle.cssStyle();  

/************************************ Model *******************************/
var content = Backbone.Model.extend({
defaults: function() {
  return {
    id : null,
    svgStructure: "",
    svgParameterList: ""
  };
},
initialize: function() {
    var self=this;
    this.svgStructure=new svgStructure();
    this.svgParameterList=new svgParameterList();
}
});


/************************************ Model *******************************/
var svgStructure = Backbone.Model.extend({
defaults: function() {
  return {
    id : null,
    name: ""};
}
});

 /************************************ Model *******************************/
 var svgParameter = Backbone.Model.extend({
defaults: function() {
  return {
    id : null,
    name: ""
  };
 },
changeStyle: function(){
    alert("ChangeStyle");
}
 });


 /************************************ Collection *******************************/
 var svgParameterList = Backbone.Collection.extend({
    initialize: function(props) {
        var self=this;

    // on definit les comportement de la collection
        _.bindAll(this, "cssStyle");
        this.bind('reset', this.cssStyle);

        //les valeurs par default doivent etre coder en dur
        props=(props==undefined)?{model: svgParameter} : props;
        this.url=(props.url==undefined)? "model.json" : props.url;
        this.elem=(props.elem==undefined)? "#age" : props.elem;
        this.model=(props.model==undefined)? svgParameter : props.model;

        //on remplit avec les valeurs dans le fichier JSON
            //~ this.fetch();
    },

    cssStyle: function(){
        alert("cssStyle");
    }
});
4

0 回答 0