这是显示问题的小提琴。http://jsfiddle.net/Erk4V/1/
如果我在ng-if内部有一个ng-model,就会出现该模型无法正常工作的情况。
我想知道这是一个错误还是误解了正确的用法。
<div ng-app >
<div ng-controller="main">
Test A: {{testa}}<br />
Test B: {{testb}}<br />
Test C: {{testc}}<br />
<div>
testa (without ng-if): <input type="checkbox" ng-model="testa" />
</div>
<div ng-if="!testa">
testb (with ng-if): <input type="checkbox" ng-model="testb" />
</div>
<div ng-if="!someothervar">
testc (with ng-if): <input type="checkbox" ng-model="testc" />
</div>
</div>
</div>
ng-if
与其他指令一样,该指令将创建子范围。请参见下面的脚本(或此jsfiddle)
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular.min.js"></script>
<script>
function main($scope) {
$scope.testa = false;
$scope.testb = false;
$scope.testc = false;
$scope.obj = {test: false};
}
</script>
<div ng-app >
<div ng-controller="main">
Test A: {{testa}}<br />
Test B: {{testb}}<br />
Test C: {{testc}}<br />
{{obj.test}}
<div>
testa (without ng-if): <input type="checkbox" ng-model="testa" />
</div>
<div ng-if="!testa">
testb (with ng-if): <input type="checkbox" ng-model="testb" /> {{testb}}
</div>
<div ng-if="!someothervar">
testc (with ng-if): <input type="checkbox" ng-model="testc" />
</div>
<div ng-if="!someothervar">
object (with ng-if): <input type="checkbox" ng-model="obj.test" />
</div>
</div>
</div>
因此,您的复选框将更改testb
子作用域的内部,而不更改外部父作用域。
请注意,如果要修改父作用域中的数据,则需要像我添加的最后一个div一样修改对象的内部属性。
问题内容: 我正在尝试将a的值存储到我的JS代码中。但是我找不到在这种情况下为什么不起作用的原因。 有解决方法吗? 参见: JSFiddle 注意: 我正在创建一个文本编辑器,因此当用户将HTML存储在其后时,用户应该看到结果。(即,用户在存储以下内容时看到:“这是一个 示例 !”) 问题答案: contenteditable标签不能直接与angular的ng模型一起使用,因为contentedi
问题内容: 我正在开发Angular应用程序。我尝试使用ng-if并在 ng-repeat中 切换,但未成功。我有类似的数据: $ scope.comments =上面提到的数据 和我的HTML一样: 如何在Angular中实现此目标? 问题答案: 尝试环绕(,,)与报价:
问题内容: 我正在将ng-table与动态列一起使用,使用http://bazalt-cms.com/ng- table/example/20中 的创建者示例 它工作得很好,直到我尝试使用transclude包裹指令之前,女巫导致标题消失,如http://plnkr.co/edit/mjYVEf所示。 index.html script.js 有人遇到过同样的问题吗? 问题答案: 为页眉定义模板,
问题内容: 我有一张桌子,其中的行通过重复。我正在尝试创建一个模板,为每一行生成列 问题是我的自定义td模板根本没有呈现。在这里,我打算用n个s 代替- 这将根据我的数据对象上的属性数量来确定,但是目前,我只是试图获得一个简单的指令,该指令将输出两列。 MYPLUNKER:显示此问题的一个实例和指令代码。 问题答案: 如注释中所指出,指令模板应具有单个根元素。因此,我建议您将元素移动到指令的模板,
问题内容: 我有一个像这样的简单循环: 控制器中有一个功能。 据我所知,Angular将首先渲染视图并用数字替换插值,然后在单击事件时将评估字符串。 在这种情况下,完全可以得到预期的结果,即:但是……它什么也没做。 当然,我可以编写代码以从数组甚至DOM中获取代码,但这似乎不像Angular那样。 那么,如何在循环内向指令添加动态内容呢? 问题答案: 代替 做这个: 请看这个小提琴: http:/
问题内容: 我有一个视图,其中父div上具有ng-if,而某些子元素上具有ng-show。嵌套在带有ng-if的元素下时,ng- show似乎无法正常工作。这是Angular错误还是我做错了什么? 见这个矮子。 HTML: JavaScript: 谢谢, 安迪 问题答案: 与指令不同,它 创建了一个新的作用域* 。 * 因此,当您在内部编写内容时,您是在子范围而非主范围上设置属性。 要解决此问题,