AngularJS:指令模板可以包含表单元素吗?
是否可以在角度指令模板内使用AngularJS:指令模板可以包含表单元素吗?,angularjs,angularjs-directive,angularjs-ng-transclude,Angularjs,Angularjs Directive,Angularjs Ng Transclude,是否可以在角度指令模板内使用表单元素?例如,我可能希望完全生成表单以保存重复编码-HTML显示数据,指令自动生成编辑。我会发现它对编辑重复次数很多的页面很有用: <div data-editable="true"> <span>{{item.name}}</span> </div> {{item.name}}未在中转写 元素已完全剥离 我做错了什么?这里有两个问题: 在一个的内部有一个,它被浏览器或angular(我不在乎
表单
元素?例如,我可能希望完全生成表单以保存重复编码-HTML显示数据,指令自动生成编辑。我会发现它对编辑重复次数很多的页面很有用:
<div data-editable="true">
<span>{{item.name}}</span>
</div>
未在中转写{{item.name}}
元素已完全剥离
我做错了什么?这里有两个问题:
的内部有一个
,它被浏览器或angular(我不在乎是哪个)去掉了ng transclude
作为属性。从1.3.0开始,它也支持它作为一个元素您是否尝试在模板中定义转包入口点<代码>模板:'FORM',看起来很有效,哈!在plnkr中也是如此,但我的JSFIDLE没有。我需要知道为什么它不能。是的,角度指令可以包含表单元素,我在实践中使用了这种可能性,虽然没有转换。好的,第一个谜团解决了。您正在使用1.3.0-rc2。如果您尝试1.2.x(我尝试了1.2.1和1.2.13),则
似乎无法排除。这个表格仍然是个谜,不过…仅供参考。可以对嵌套表单使用该指令。
.directive('editable',function(){
return {
restrict: 'AE',
require: '^form',
transclude:true,
scope: {}, // to be set after...
template:'<div><form name="someForm"><span>FORM</span></form></div>',
link: function(scope,elm,attrs,controller) {
//nothing here quite yet...
}
};
});
<div data-editable="true" class="ng-isolate-scope"><div><span>FORM</span><ng-transclude></ng-transclude></div></div>