[C#]停止传播上角切换开关

发布时间: 2017/2/23 20:08:01
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我有一个问题与角切换开关︰

我有一个窗体。如果这种形式被修改,并且不会保存,当我点击链接它显示"#enregistrementModal"modal。

modal︰

<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。然后我不能阻止传播和它在任何情况下切换从真亦假。

切换切换︰

<toggle-switch id="toggleMail" model="vm.isMailChecked" on-change="vm.saveCanalMail()" on-label="Oui" off-label="Non"></toggle-switch>

如何停止拨动开关的传播并显示我以前的模式?

谢谢你的进展。

解决方法 1:

不要使用 Javascript click 处理程序,但 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>
赞助商