单击时在模态内重新加载模态内容

时间:2013-03-09 18:55:55

标签: php javascript jquery twitter-bootstrap

我有这个非常简单的jQuery脚本来改变基于链接的模态内容。代码:

$('#facebook-friends').on('hidden', function () {
  $(this).removeData('modal');
});

然后我可以根据按钮控制将使用哪些内容:

<a href="facebook-frame.php" id="full-width" data-target="#facebook-friends" role="button" class="btn btn-primary" data-toggle="modal"><i class="icon-facebook"></i> Use Facebook</a>

完美无缺!但是,我在这个facebook-frame.php文件中有链接,我希望所有操作都保留在模态中,以便外页不会重新加载。

我在facebook-frame.php内尝试了此解决方案,但它不起作用。

<a href="facebook-frame.php?all" data-target="#facebook-friends" role="button" class="btn btn-primary" data-toggle="modal">

这是我主页上的模式:

    <div class="modal fade hide" id="facebook-friends" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true" >
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 id="myModalLabel">Inviter veninder fra Facebook</h3>
  </div>
  <div class="modal-body text-center">
    <p>Loading content...</p>
<p><IMG src="ajax-loader.gif"></p>
  </div>
  <div class="modal-footer">
    <button class="btn" data-dismiss="modal" aria-hidden="true">Luk</button>
  </div>
    </div>

我特别喜欢“加载内容”,因为它似乎很有活力。

有没有办法为facebook-frame.php内的链接/按钮分配一个特殊的命令/类/名称,以便在点击时它会临时显示“正在加载内容”,然后同时加载请求的页面(在{{ 1}}属性)?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您可以在facebook-frame.php内捕获所有<a>(或特定的<a>类)点击事件吗?

$(document).on('click', '#facebook-friends a', function(e) {
    e.preventDefault();
    // show the "Loading content" message
    // load the content and whatever else you need to do
});

注意:.on()需要jQuery 1.7+。在此之前,您将使用.live()