我正在使用 AngularJS 创建一个问卷表单,并且我正在模板化不同类型的问题,我必须保持我的 HTML 轻量级。
HTML:
<qtnyesno qtn-variable="testVar">This is a test question. Yes or No?</qtnyesno>
testVar = {{testVar}}
JS:
var module = angular.module('app', [])
.directive('qtnyesno', function() {
return {
restrict: 'E', // must be an HTML element
transclude: true,
scope: {
valvar: '@qtnVariable',
},
template:
'<div>' +
'<label ng-transclude></label>' +
'<label class="radio inline"><input type="radio" name="rdo{{valvar}}" value="1" ng-model="{{valvar}}">Yes </label>' +
'<label class="radio inline"><input type="radio" name="rdo{{valvar}}" value="0" ng-model="{{valvar}}">No </label>' +
'<hr></div>',
replace: true,
};
});
当我在输入标签ng-model="{{valvar}}"中使用时,会出现编译错误。
当我尝试改用ng-click="{{valvar}} = 0"时,我没有收到编译错误,但是当我单击单选按钮时,我获取 testVar 值的显示语句永远不会起作用。
当我点击按钮时,我将如何解决这个问题,以便我的 HTML 的最后一行正确更新为 testVar 的值?
我正在使用 AngularJS 和 Bootstrap。我对这两个框架都很陌生,所以我不确定这是否是最好的方法。