在 angular-toggle-switch 上停止传播
Stop propagation on angular-toggle-switch
我对 angular-切换开关有疑问:
我有一个表格。如果此表单已修改且未保存,当我单击 link 时,它会显示“#enregistrementModal”模式。
模态:
<div class="modal-body">
Please save your informations before continue.
<button type="button" data-dismiss="modal">×</button>
</div>
Html :
<a id="popoverDeleting" data-toggle="modal" data-target="#closingModal">Supprimer mon compte</a>
Javascript :
$('#popoverDeleting').on('click', function (event) {
if (vm.isLocked == false && $('#submitDonneeForm').prop("disabled") == false) {
$('#enregistrementModal').modal();
event.preventDefault();
event.stopPropagation();
return;
}
})
我的问题:
当我点击切换开关时,无法恢复 javascript 上的 $event。然后我无法停止传播,并且它在任何情况下都从 true 切换到 false。
切换开关:
<toggle-switch id="toggleMail" model="vm.isMailChecked" on-change="vm.saveCanalMail()" on-label="Oui" off-label="Non"></toggle-switch>
我怎样才能停止切换开关的传播并在之前显示我的模态?
提前致谢。
不要使用 Javascript 点击处理程序,而是使用 ng-click
指令。使用它,您可以将 $event
作为参数传递:
vm.clickHandler = function clickHandler(event) {
if (vm.isLocked == false && $('#submitDonneeForm').prop("disabled") == false) {
$('#enregistrementModal').modal();
event.preventDefault();
event.stopPropagation();
}
在你的 HTML:
<toggle-switch id="toggleMail" model="vm.isMailChecked" ng-click="vm.clickHandler($event)" ng-change="vm.saveCanalMail()" on-label="Oui" off-label="Non"></toggle-switch>
我对 angular-切换开关有疑问:
我有一个表格。如果此表单已修改且未保存,当我单击 link 时,它会显示“#enregistrementModal”模式。
模态:
<div class="modal-body">
Please save your informations before continue.
<button type="button" data-dismiss="modal">×</button>
</div>
Html :
<a id="popoverDeleting" data-toggle="modal" data-target="#closingModal">Supprimer mon compte</a>
Javascript :
$('#popoverDeleting').on('click', function (event) {
if (vm.isLocked == false && $('#submitDonneeForm').prop("disabled") == false) {
$('#enregistrementModal').modal();
event.preventDefault();
event.stopPropagation();
return;
}
})
我的问题:
当我点击切换开关时,无法恢复 javascript 上的 $event。然后我无法停止传播,并且它在任何情况下都从 true 切换到 false。
切换开关:
<toggle-switch id="toggleMail" model="vm.isMailChecked" on-change="vm.saveCanalMail()" on-label="Oui" off-label="Non"></toggle-switch>
我怎样才能停止切换开关的传播并在之前显示我的模态?
提前致谢。
不要使用 Javascript 点击处理程序,而是使用 ng-click
指令。使用它,您可以将 $event
作为参数传递:
vm.clickHandler = function clickHandler(event) {
if (vm.isLocked == false && $('#submitDonneeForm').prop("disabled") == false) {
$('#enregistrementModal').modal();
event.preventDefault();
event.stopPropagation();
}
在你的 HTML:
<toggle-switch id="toggleMail" model="vm.isMailChecked" ng-click="vm.clickHandler($event)" ng-change="vm.saveCanalMail()" on-label="Oui" off-label="Non"></toggle-switch>