选择不起作用的布尔值的Angularjs ng-value

时间:2016-05-09 14:17:03

标签: javascript php angularjs laravel

我想使用ng-value="true"false(布尔值)作为选择选项。但是我想在php中填写选项,因为我正在使用laravel和翻译器。这是我的代码,发送表单后该值不是boolean。

 <select
      id="job-payed"
      required
      class="form-control"
      name="payed"
      ng-model="payed">
  <option selected disabled value>Please choose..</option>
  <option ng-value="true">Payed</option>
  <option ng-value="false">Not payed</option>
 </select>

3 个答案:

答案 0 :(得分:0)

尝试使用ng-value =&#34;&#39; true&#39;&#34;因为ngValue应包含

值的表达式

如果您使用ng-value =&#34; true&#34; angular将在您的范围($ scope.true)中查找名为true的变量

请参阅https://docs.angularjs.org/api/ng/directive/ngValue

答案 1 :(得分:0)

这适用于选择框按预期从Angular 1.6.0开始。先前版本的ng-value将值视为选择框中的字符串。

Angular 1.5.0:https://plnkr.co/edit/G52M9yaAgJjfVj82i3YF?p=preview

Angular 1.6.0:https://plnkr.co/edit/nyI4ENLW1h0z3JuyDYWO?p=preview

更新插件中的版本以查看类型的更改方式:

<script src="//code.angularjs.org/1.5.0/angular.min.js"></script>

答案 2 :(得分:0)

如果仍有问题,请尝试以下方法:

<select id="job-payed" required class="form-control" name="payed" ng-model="payed">
    <option selected disabled value>Please choose..</option>
    <option ng-value="{{ true }}">Payed</option>
    <option ng-value="{{ false }}">Not payed</option>
</select>