我在引导模式中有一些表单和 div,当单击 div 时,它会添加一些 css 类来更改外观,并在表单中输入一些内容,现在当我关闭模式并再次打开它时,表单输入并添加 css 类是仍然在那里,我希望每当模式打开时,它应该是一个新的。所以我找到了一个解决方案:
$('#modal).on('hidden',function(){
$(this).removeData('modal')
})
这个想法是,Bootstrap 将在第一次 modal() 触发时实例化一个模态,并向模态元素添加一些数据模态,当下一个 modal() 触发时,它只显示隐藏的旧模态实例,而不是创建新的,所以上面的方法尝试删除data-modal属性,强制Bootstrap实例化一个新的modal。
但它似乎不适用于角度,这就是我所拥有的:
<div class='row' >
<div class='span14' >
<div data-new-modal='new_item_modal' id='new_item' class='item' >create</div>
</div>
</div>
<div id='new-item-modal' data-item-modal>
// modal body
</div>
有角度的
directive.newItem = function(){
return {
restrict:'A',
link:function(scope,element,attrs){
element.bind('click',function(){
$('#'+attrs.newItem).modal();
});
}
};
};
directive.itemModal = function(){
return {
restrict:'A',
link:function(scope,element,attrs){
element.on('hidden',function(){
console.log(element.data('modal'))
element.removeData('modal') // wont work
//scope.$apply(element.removeData('modal')) wont work either
console.log(element.data('modal'))
})
}
}
};
知道如何以角度重置引导模式吗?
而且我只是发现即使我刷新页面有时模态仍然保持不变!