当我显示我的模态时,会自动调用 onApprove 事件。我怎么能阻止这个?
我的代码如下

<div class="item">
    <div class="content">
       <a href="#" ng-click="showItemPanel()">Deactivate Account</a>
       <div id='showItemModal' class='ui modal'>
       <i class="close icon"></i>
       <div class="header">
         Deactivate User
       </div>
       <div class="content">
       <form class="ui form" name="ItemModalForm">
          <div class="field">
            You want to go to shopping?
          </div>
       </form>
       </div>
       <div class="actions">
        <div class="ui tiny button">Cancel</div>
        <div class="ui tiny green button" ng-click="showItems()">De-Activate</div>
        </div>
       </div>
   </div>

Controller .js
$scope.showItemPanel= function() {
            var modalElem= $('#showItemModal').modal('setting', {
            closable  : false,
            onDeny    : function(){
              window.alert('Wait not yet!');
              return false;
            },
            onApprove : itemPanelOpen()
            });
          modalElem.modal('show');
        }
        function itemPanelOpen()
        {
            console.log(user.name + " can now shop!");
        }

对我来说,只要调用 showItemPanel 函数,itemPanelOpen 函数也会自动调用。请让我知道我哪里出错了。

最佳答案

我今天遇到了这个问题,发现按钮的定义应该是

<div class="actions">
        <div class="ui tiny button deny">Cancel</div>
        <div class="ui tiny green button approve">De-Activate</div>
</div>

使用按钮的类属性中的 'approve',onApprove 和 onDeny 事件可以工作。

您可以找到模态 DOM selector 的语义 UI 文档:
selector    : {
  close    : '.close, .actions .button',
  approve  : '.actions .positive, .actions .approve, .actions .ok',
  deny     : '.actions .negative, .actions .deny, .actions .cancel'
}

我花了几个小时来弄清楚未触发的事件,并且觉得这里的文档写得不是很好。

关于javascript - onApprove 和 onDeny 未在模态中触发 - 语义 ui,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21716365/

10-13 01:18