在角

2014-10-03 25 views
0

使用变量模型我有这个架构business_hours:在角

business_hours: { 
     sunday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     monday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     tuesday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     wednesday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     thursday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     friday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]}, 
     saturday: {closed: {type:Boolean, trim: true}, 
      timings: [{ 
       open: {type:Number, default: '', trim: true}, 
       close: {type:Number, default: '', trim: true} 
      }]} 
    }, 

我创建了上述模式的UI。所以我使用ng-repeat来达到这个目的。我有一个数组星期在我的控制器定义:

$scope.week = ['Sunday','Monday' ,'Tuesday' ,'Wednesday' ,'Thursday' ,'Friday', 'Saturday']; 

和HTML代码如下:

<div class="row-fluid span12"> 
      <small>Timings</small> 
     </div> 
     <div ng-repeat="w in week"> 

     <div class="row-fluid pushTop10px"> 
      <div class="row-fluid span4"> 
       <small>{{w}}</small> 
      </div> 
      <div class="row-fluid span8 " > 
       <div class="row-fluid span2" style="text-align:center; margin-top:4px;"> 
        <small>Open</small> 
       </div> 
       <div class="row-fluid span2">    
        <select class="span12" ng-model="outlet.business_hours.timings.w.open.hour"> 
        <option value="1"><label>00</label></option> 
        <option value="2"><label>01</label></option> 

此代码的推移。基本上有四件事情:开放时间,开放分钟,关闭时间,关闭分钟。当我在印刷它时,周中的w正在工作。但是当我在模型中使用它时,它不起作用。 我也试过下面的代码:

outlet.business_hours.timings.{{w}}.open.hour 
outlet.business_hours.timings.week[w].open.hour 
outlet.business_hours.timings.week($index).open.hour 

怎么办?

+0

看看这个http://stackoverflow.com/questions/4255472/javascript-object-access-variable-property-by-name-as-string,不要忘记,JavaScript区分大小写。 – ysf 2014-10-03 08:54:49

回答

1

你能尝试

outlet.business_hours[w].timings[0].open(hour) 

凡小时的范围是一个属性

Additionaly,星期日=周日)

你能提供!更多的代码?

0

方法如下:

outlet.business_hours[w].timings[0].open.hour 
+0

不工作。错误是“无法读取属性'未定义的”打开' – rishiag 2014-10-03 08:55:19

+0

您确定'open'是否已定义? {{outlet.business_hours ['sunday']}}输出的是什么? – timsmiths 2014-10-03 09:06:50

+0

您是否对@ysf提出了更改建议? – timsmiths 2014-10-03 09:12:06