我在页面上有一个表单,如果页面上有所有表单元素http://jsfiddle.net/nkanand4/6za8h8xg/1/,则表单已经过验证。
public static Queue<Integer> mostCommonStringFinder (String document, int k){
if (document == null){
throw new IllegalArgumentException();
}
if (document.isEmpty()){
throw new IllegalArgumentException("Document is empty");
}
String [] wordHolder = document.split(" ");
HashMap<String, Integer> map = new HashMap<String, Integer>();
for (String s : wordHolder){
if (!map.containsKey(s)){
map.put(s, 1);
}
else{
int value = map.get(s);
value++;
map.put(s, value);
}
}
Queue<Integer> minHeap = new PriorityQueue<>();
for ( int i = 0 ; i < k ; i++){
minHeap.add(map.get(i));
}
for(int j = k ; j < map.size() ; j++){
if(map.get(j) > minHeap.peek()){
minHeap.poll();
minHeap.add(map.get(j));
}
}
return minHeap;
}
但是,如果我正在使用向导类型的表单,则会停止工作,其中每个步骤都使用指令http://jsfiddle.net/nkanand4/pe17afvq/2/填充。
<div ng-form="myform">
<div>
Name: <input type="text" ng-model="user.name" required name="input"/>
</div>
</div>
如何解决这个问题的任何想法将不胜感激。感谢。
修改: 我最初开始使用ng-include但是放弃了这种方法,因为如果我使用它,数据不会从步骤1持续到步骤2再返回到步骤1.当你来回移动时会创建一个新范围的原因。因此,我需要一种方法将所有数据保存在范围属性下,例如$ scope.data.user.name,以便我可以在请求时传回$ scope.data。
答案 0 :(得分:2)
不要自己编译HTML,你可以让Angular为你做好:
[a[0] for a in re.findall('((?P<caps>[A-Z])[a-z]*\\s(?P=caps)[a-z]*)', names)]
答案 1 :(得分:0)
终于把它整理好了。这被报告为angularJS问题跟踪器https://github.com/angular/angular.js/issues/7519上的错误。诀窍是在使用$ compile时返回的链接函数中使用克隆。
$compile(html)(scope, function(clone) {
elem.empty().append(clone);
});
相应地更新了我的jsfiddle,它确实有效!