javascript - 带有添加的关闭选项的 Bootstrap Popover 也提交表单

标签 javascript jquery html css twitter-bootstrap

正如您在此 jQuery 中看到的那样,我有一个 Boostrap Popover,它可以通过外部点击以及点击“x”来关闭。

然而,当这个弹出窗口被放置在一个表单中时,它也会提交表单。

有没有一种方法可以在单击后不提交表单的情况下获得此可关闭弹出窗口的功能?

HTML:

<form action="quote-calculator.php" method="post">
    <div class="bs-docs-example" style="padding-bottom: 24px;">
      <a href="#" class="more-info btn btn-large btn-danger" data-toggle="popover" data-content="And here's some amazing content. It's very engaging. right?">Click to toggle popover</a>
    </div>
</form>

jQuery:

        var isVisible = false;
        var clickedAway = false;

        $('.btn-danger').popover({
                html: true,
                trigger: 'manual'
            }).click(function(e) {
                $(this).popover('show');
            $('.popover-content').append('<button class="close" style="position: absolute; top: 0; right: 6px;">&times;</button>');
                clickedAway = false
                isVisible = true
                e.preventDefault()
            });

        $(document).click(function(e) {
          if(isVisible & clickedAway)
          {
            $('.btn-danger').popover('hide')
            isVisible = clickedAway = false
          }
          else
          {
            clickedAway = true
          }
        });

最佳答案

将按钮元素更改为 anchor 元素。

http://jsfiddle.net/LRCNm/8/

$('.popover-content').append('<a class="close" style="position: absolute; top: 0; right: 6px;">&times;</a>');
                    clickedAway = false
                    isVisible = true
                    e.preventDefault()
                });

关于javascript - 带有添加的关闭选项的 Bootstrap Popover 也提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15615213/

相关文章:

javascript - 在 Angularjs 中通过 IP 地址获取用户的位置

javascript - 如何使用 jQuery UI 可拖动设置表单中的值?

html - Three.js:使用 cubeMaterials 和不透明度与 MeshFaceMaterial - THREE.DoubleSide 不工作?

javascript - 将 Canvas 用于游戏的真正好处是什么?

javascript - 根据日期更改链接

javascript - 动态更改 fck 编辑器内容

javascript - 单击文本框时如何自动取消选中复选框

javascript - AngularJS - 过滤器返回引用?

javascript - JQuery/Javascript 代码未输入 'each'

javascript - 从选项更改元素的文本