如果我在angularjs中使用表格的td,为什么ng-model给我未定义?

时间:2016-02-09 07:27:24

标签: angularjs angularjs-ng-model

下面是代码,我使用select但在更改事件时我得到了未定义的值。

<table id="example1" class="table table-bordered table-striped" ng-table="tableParams" show-filter="isFiltersVisible"> 
  <colgroup>
    <col width="5%"/>
    <col width="5%"/>
  </colgroup>                               
  <tr>
    <td>
      <select ng-change="changed()"
        ng-model="regions"
        ng-options="data.name for data in options">
      </select>             
    </td>
    <td colspan='3'>
      <input type='button' name='go' value='Go' class='btn btn-primary' ng-click="performAction()">
    </td>
  </tr>  
</table>   

1 个答案:

答案 0 :(得分:0)

如果我考虑你的ng-options,那么结果就是ng-model存储了该区域的名称。

您确定您的地区未定义,或者您是否正在尝试检查regions.name?

以防万一你想要ng-model中的整个对象:

ng-options="data as data.name for data in options"

此外,名称数据/选项可能与ng-options指令冲突,您应该使用点表示法:Why don't the AngularJS docs use a dot in the model directive?。最好的是:

ng-options="data as data.name for data in model.options

使用你的javascript:

$scope.model = {options:[your data]};

现在,如果不是那样,请向我们展示控制器的整个代码,如果您的数据在其他地方定义(如服务器请求),请向我们展示格式。