【发布时间】:2016-12-16 02:09:52
【问题描述】:
我想要做的是使用用户选择的单选按钮值来更新控制器中的变量。该变量取决于值将对特定答案进行 http 调用。
示例:
选择汽车 -> 变量 temp = 卡片 -> http 调用汽车方法
选择房子 -> 变量 temp = 房子 -> http 调用房子方法
在视图中我有这样的东西:
<input id ="inputOne" type="radio" ng-value="cars" ng-model="controller.selection">
<input id ="inputTwo" type="radio" ng-value="house" ng-model="controller.selection">
<input id="mySubmit" type="button" ng-click="controller.selectionChosen">
在我的控制器中我有这样的东西:
var vm=this;
vm.selection;
function selectionChosen(){
alert(vm.selection);
// If selection == cars do this
// If selection == house do this
}
您可能想知道为什么它是 'controllerName.variableName',我正在遵循最佳实践 (found here) `所以它的设置方式需要控制器名称,然后是变量。
我遇到的问题是由于某种原因该值没有约束力。当警报发生时,它会提示“未定义”,我不知道为什么。我在网上查看了许多教程和示例,这看起来应该可以工作。
更新
所以我很确定它具有约束力,或者至少正在尝试。当我将变量初始化为“测试”时,第一个警报显示“测试”。单击按钮后,它将转到“未定义”。
【问题讨论】:
-
要进行故障排除,我建议验证您的视图中的控制器实际上是否按照您的预期引用了您的控制器。
-
是的,我在视图中使用了其他变量并且它们工作正常。
标签: html angularjs model-view-controller angularjs-directive