AngularJS空白默认选择

时间:2014-10-14 16:51:25

标签: javascript angularjs

我有一个包含六个选项的select元素,第一个是空白选项:

<select name="method-rcvd" class="form-control" ng-model="workRequest.ReceiveMethod" required >
    <option value="" ng-selected="true"></option>
    <option value="1">Phone</option>
    <option value="2">Email</option>
    <option value="3">Fax</option>
    <option value="4">Mail</option>
    <option value="5">Other</option>
</select>

在范围内是绑定到此选择的对象属性:

$scope.workRequest.ReceiveMethod = "";

出于某种原因,选择ALWAYS默认为&#34; Phone&#34;而不是空白。我希望它默认为空白。当我删除模型绑定时,它起作用,所以我知道它与它有关,但它需要绑定。在我看来,这应该是相对简单的,但我很难让这个简单的事情发挥作用。

当我在select:

下面吐出ReceiveMethod的值时
Receive Method: {{workRequest.ReceiveMethod}}

它始终默认为&#34; 1&#34;。如何将此默认设置为第一个选项,空白选项?

感谢。

2 个答案:

答案 0 :(得分:0)

您是否在控制器中设置了默认值?

如果您将默认值设置为0而不是''会怎样?

这应该有用,但必须在workRequest.ReceiveMethod

上设置另一个值

答案 1 :(得分:0)

我通过使用ng-init指令来实现这一点,如下所示:

<select name="method-rcvd" class="form-control"
        ng-model="workRequest.ReceiveMethod"
        ng-init="workRequest.ReceiveMethod = ''" required >
    <option value=""></option>
    <option value="1">Phone</option>
    <option value="2">Email</option>
    <option value="3">Fax</option>
    <option value="4">Mail</option>
    <option value="5">Other</option>
</select>

您也不需要

  

纳克选择= “真”

在第一个(空白)选项中。