【问题标题】:Access elements in bootstrap modal with jquery使用 jquery 访问引导模式中的元素
【发布时间】:2014-11-18 13:04:49
【问题描述】:

我正在使用this angular-bootstrap 模态。

其内容:

<script type="text/ng-template" id="myModalContent.html">
    <div class="modal-body">
          <button id="my_button">Alert</button>
    </div>
</script>

我已经尝试了这两个选项:

$("#my_button").click(function(){
    alert("ALERT");
})

$("#my_button").on("click", function(){
    alert("ALERT");
})

如何访问该按钮?

【问题讨论】:

  • 你应该使用 ng-click 有角度的东西!

标签: jquery angularjs twitter-bootstrap


【解决方案1】:

使用 Angular JS,您应该使用 ng-click 将事件处理程序链接到您的按钮。

喜欢:

<a ng-click="iWillClick()">Click me</a>

将执行范围的 iWillClick 功能(在您的相关控制器中)。查看this 了解 ng-click 的工作原理。

所以在你的情况下,如果你的页脚是:

<div class="modal-footer ng-scope">
   <button ng-click="ok()" class="btn btn-primary">OK</button>
   <button ng-click="cancel()" class="btn btn-warning">Cancel</button>
</div>

将在 OK 时执行 ok() 函数,在取消时执行 cancel() 函数。这两个都应该在你的控制器上。

如果出于任何原因你想为你的事件处理程序使用普通的 jQuery,你应该这样做

$(".modal-footer .btn-primary").on("click", function(){
    alert("OK");
});

$(".modal-footer .btn-warning").on("click", function(){
    alert("CANCEL");
});

【讨论】:

  • 好的,太好了)谢谢!还有一个问题:我在模态框内有一张图片,如何在加载之前显示加载 gif?
  • 如何加载?是 Ajax 调用吗?如果是这样,那么您如何调用 ajax 调用?您可以有一个图像 并在您的控制器中将 iAmLoading 设置为 true 或 false
  • 我只有 ,url 来自控制器
  • 你能把你的控制器和代码贴在这里吗?如果您愿意发布新问题并告诉我。
猜你喜欢
  • 2021-01-11
  • 2016-07-20
  • 1970-01-01
  • 2016-03-03
  • 2017-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多