首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JqueryUI:打开对话框的链接

问JqueryUI:打开对话框的链接
EN

Stack Overflow用户
提问于 2010-06-04 21:07:50
回答 2查看 484关注 0票数 1

我有这个代码,当链接被点击时,它应该会创建一个带有google页面的对话框:

代码语言:javascript
复制
<?php use_javascript('/sfJqueryReloadedPlugin/js/jquery-1.3.2.min.js') ?>
<?php use_javascript('/sfJqueryReloadedPlugin/js/plugins/jquery-ui-1.7.2.custom.min') ?>
<?php use_stylesheet('/sfJqueryReloadedPlugin/css/ui-lightness/jquery-ui-1.7.2.custom.css') ?>

<script type="text/javascript">

        $(function (){
                $('a.ajax').click(function() {
                        var url = this.href;
                        var dialog = $('<div style="display:hidden"></div>').appendTo('body');
                        // load remote content
                        dialog.load(
                                url, 
                                {},
                                function (responseText, textStatus, XMLHttpRequest) {
                                        dialog.dialog();
                                }
                        );
                        //prevent the browser to follow the link
                        return false;
                });
        });

</script>

<a class="ajax" href="http://www.google.com">
          Open a dialog
</a>

问题:它显示了对话框,但google不在里面。

我对以下内容没有任何问题:

代码语言:javascript
复制
<script type="text/javascript">
    $(function() {
        $("#dialog").dialog();
    });
    </script>


<div id="dialog" title="Basic dialog">
    <p>This is the default dialog which is useful for displaying information. The dialog window can be moved, resized and closed with the 'x' icon.</p>
</div>

有什么想法吗?

哈维

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-06-04 21:11:51

您不能发出跨域ajax请求。这意味着您不能从google.com获取html并将其放入对话框中。如果你想让google出现在你的对话框中,那么你可能会想要使用一个iframe,或者只是编写你自己的html,让它看起来像google,当他们点击搜索时,打开一个新的窗口来显示搜索结果。

票数 2
EN

Stack Overflow用户

发布于 2010-06-04 21:18:16

出于安全原因,您不能向最初提供网页的域以外的其他域发出AJAX请求。有关安全风险的示例,请参阅http://en.wikipedia.org/wiki/Same_origin_policy

相反,您应该考虑使用一个隐藏的iframe,其中加载了Google页面,当单击按钮时,该页面将出现在正确的位置。

例如:

代码语言:javascript
复制
<iframe src="http://www.google.com/" style="display:none">
  <p>Your browser does not support iframes.</p>
</iframe>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2974399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档