bootstrap popup(bootbox)中的Javascript事件不起作用

时间:2013-12-11 15:02:47

标签: javascript jquery twitter-bootstrap javascript-events bootbox

我正在尝试使用bootbox模式创建一个bootstrap弹出窗口,在form中有一个带有屏蔽输入的输入文本,但弹出窗口内的任何事件都不起作用。

见这里:http://jsfiddle.net/ens1z/UK6x5/5/

html:

<p>The mask input below WORKS great</p>
<p>
    <input type="text" class="mask" />
</p>

<a href="#" class="btn btn-inverse" id="asssf">OPEN BOOTBOX</a>

<div id="frm" style="visibility: hidden">
    <div class="form-horizontal">
        <p>The mask input below DON´T WORK. :-(</p>
        <input type="text" class="mask"/>
    </div>
</div>

JavaScript的:

 $("#asssf").click(function (e) {
            e.preventDefault();

     bootbox.dialog({
                  message: $("#frm").html(),
                  title: "Custom title",         
                  buttons: {
                    success: {
                      label: "Success!",
                      className: "btn-danger",
                      callback: function() {
                            return;
                      }
                    }
                  }
            });

           $(".mask").mask("999-99-9999",{placeholder:"_"});
});

$(".mask").mask("999-99-9999",{placeholder:"_"});

如何屏蔽弹出窗口内的作品?

谢谢,

1 个答案:

答案 0 :(得分:5)

试试这个小提琴:) HERE

问题是您在没有事件的情况下将html加载到bootbox。

我做了一个解决问题的功能:

function BootboxContent(){
    var content = $("#frm").clone(true);
    $(content).css('visibility','visible');
     content.find('.mask').mask("999-99-9999",{placeholder:"_"});
 return content ;
}

在小提琴中调用你的消息,或者没有这样的功能:

 bootbox.dialog({
              message: $("#frm").clone(true).css('visibility','visible').find('.mask').mask("999-99-9999",{placeholder:"_"}),
              title: "Custom title",         
              buttons: {
                success: {
                  label: "Success!",
                  className: "btn-danger",
                  callback: function() {
                        return;
                  }
                }
              }
        });
});