我遇到了双向数据绑定的问题,我从控制器获取一个对象数组,当我发出另一个尝试提交部分数据的请求时,当我使用{{{}时,它会返回并在控制器中未定义1}}, 该应用程序使用AngularJS 1.5.8和angular-route 有人可以帮我弄清楚为什么寄存器作用域中的console.log记录undefined而不是名称。代码 我的索引文件:
console.log
答案 0 :(得分:1)
因为您正在使用
console.log($scope.regname);
您的范围内不存在。事实上,在你的HTML中你有
<input type="text" name="regname" value='{{i.name}}' \ng-model='{{i.name}}' hidden>
但是regname只是输入的名称,而不是与范围的绑定。
将ng-click寄存器()替换为:
<input type="submit" name="sub2" ng-click="register(i.name)">
然后你的寄存器功能应该是:
$scope.register = function(name){
console.log(name);
}
P.S。
无需在ng-model(ng-model='{{i.name}}'
)中使用{{}}括号。替换为
ng-model="i.name"
中显示class ChangeForgeinKeyOnUsersTable < ActiveRecord::Migration[5.0]
def change
remove_foreign_key :users, column: :admin_id
add_foreign_key :users, :admins, column: :admin_id, on_delete: :nullify
end
end
。