Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在AngularJS中选择未正确绑定的框_Javascript_Angularjs - Fatal编程技术网

Javascript 在AngularJS中选择未正确绑定的框

Javascript 在AngularJS中选择未正确绑定的框,javascript,angularjs,Javascript,Angularjs,AngularJS绑定无法与selectbox配合使用。我有以下选择: <select id="ratingProject" data-ng-model="rt.project" data-ng-options="prj.name for prj in projectList"></select> 但这不起作用,如果我点击按钮,selectbox不会更新其值。问题只发生在selectbox上,如果我按如下方式输入文本,它就会工作: <input type="tex

AngularJS绑定无法与selectbox配合使用。我有以下选择:

<select id="ratingProject" data-ng-model="rt.project" data-ng-options="prj.name for prj in projectList"></select>
但这不起作用,如果我点击按钮,selectbox不会更新其值。问题只发生在selectbox上,如果我按如下方式输入文本,它就会工作:

<input type="text" id="ratingProject" data-ng-model="rt.project.name" />
关于为什么会发生这种情况,有什么建议吗?
谢谢

更改传递给函数的参数

<button data-ng-click="rating.modify(prj)">Modify</button>
修改

通过向
ng选项添加
track by prj.id
来解决这不是选择框的问题,而是
修改功能的问题。不要使用
$.extend
,这是jQuery,它不支持角度。改为使用
angular.extend
。谢谢,仍然不起作用,我使用了
angular.extend
,但我也可以使用
$scope.rt=$scope.subcontractor.ratings[index]但它仍然无法工作。我不确定我是否理解您的按钮在这里的作用。
data ng model=rt.project
假设您有多个
prj
,并且您选择的一个被设置为
rt.project
,但是在您的
modify
函数中,您正在替换整个
rt
,这实际上没有意义。此外,您建议使用的文本输入没有更改
rt
,它正在更改
rt.project.name
。我的按钮正在尝试将数据绑定到输入,输入的
ngModel
中引用了
$scope.rt
对象,通过单击它应该填充数据,它适用于文本输入,但不适用于选择。当我替换整个
$scope.rt
项目时,我试图通过绑定填充所有输入。
$scope.rt
的结构就是我在文章末尾所描述的结构,它仍然无法解释您试图实现的目标;你能提供一份关于这个问题的报告吗?
<input type="text" id="ratingProject" data-ng-model="rt.project.name" />
rating {
    project{
        id,
        name
    },
    stars,
    comments
}
<button data-ng-click="rating.modify(prj)">Modify</button>