Javascript 手动更改选项后,AngularJS模型不会更新

Javascript 手动更改选项后,AngularJS模型不会更新,javascript,angularjs,Javascript,Angularjs,我对AngularJS模型有问题。目前我有两个select标记,我通过一些异步操作填充它,然后我只是根据接收到的数据设置select标记模型。一切都很好,但若我手动更改选择标记(选项),那个么这个异步操作就不能再更改模型了-脚本让我手动选择模型-我确信我从服务器响应中为模型分配了正确的数据,因为它一直工作到我不手动更改它为止 <select ng-model="sModel" ng-change="changeAction(sModel)" name="sList" id="sList"

我对AngularJS模型有问题。目前我有两个select标记,我通过一些异步操作填充它,然后我只是根据接收到的数据设置select标记模型。一切都很好,但若我手动更改选择标记(选项),那个么这个异步操作就不能再更改模型了-脚本让我手动选择模型-我确信我从服务器响应中为模型分配了正确的数据,因为它一直工作到我不手动更改它为止

<select ng-model="sModel" ng-change="changeAction(sModel)" name="sList" id="sList" ng-options="s.name for s in sList track by s.sId"></select>

(第二次选择如上图所示)


如果有人知道为什么手动更改后无法更新ngModel,请回答:)

您必须使用带有直接变量的ng模型。当使用带有html输入类型的ngmodel时,在ngmodel中使用对象类型,否则值不会反映

$scope.req={value:""};
在html中使用

<select data-ng-model="req.value"></select>

奇怪,但我修复了它-因为“select”是由具有ng控制器的div包装的。控制器实际上包含一个带有更改选择选项的操作。删除此ng更改后,它没有帮助,但删除了整个控制器声明

<div ng-controller="sController">
<select ng-model="sModel" ng-change="changeAction(sModel)" name="sList" id="sList" ng-options="s.name for s in sList track by s.sId"></select>
</div>

听起来像是一个范围问题,你有嵌套的控制器吗?你能提供一个可复制的案例,再加上一些代码吗?我看不出这个问题。javascript在哪里?不要使用直接变量使用json对象,如上图所示。很抱歉,我从服务器响应中得到了JSON格式。我不能使用直接变量,因为ng模型是通过ng选项数据选择的,应用程序中的更多细节都与之相关。我想知道这怎么可能。自动或手动更改与操作、数据等完全相同。。
http://jsfiddle.net/nkr33bo0/