Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/467.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从AJAX打开模式中的链接加载jQuery模式_Javascript_Jquery_Ajax_Modal Dialog - Fatal编程技术网

Javascript 如何从AJAX打开模式中的链接加载jQuery模式

Javascript 如何从AJAX打开模式中的链接加载jQuery模式,javascript,jquery,ajax,modal-dialog,Javascript,Jquery,Ajax,Modal Dialog,我已经阅读了一些答案,但没有一个与我的问题相匹配: 我想将html从AJAX请求加载到一个模式中——我已经有了,而且效果很好 我想点击加载模式中的一个链接,然后打开另一个包含更多详细信息的模式,可以再次打开更多模式链接。-然后我可以在页面上拖动这些,打开很多 所以很明显,当我在加载模式中单击一个链接时,它会转到该页面,而不是在另一个模式中打开它 <script type="text/javascript"> $(document).ready(function() { $('

我已经阅读了一些答案,但没有一个与我的问题相匹配:

我想将html从AJAX请求加载到一个模式中——我已经有了,而且效果很好

我想点击加载模式中的一个链接,然后打开另一个包含更多详细信息的模式,可以再次打开更多模式链接。-然后我可以在页面上拖动这些,打开很多

所以很明显,当我在加载模式中单击一个链接时,它会转到该页面,而不是在另一个模式中打开它

<script type="text/javascript">
$(document).ready(function() {
    $('a.open').each(function() {
        var $link = $(this);
        var $dialog = $('<div></div>')
            .load($link.attr('href'))
            .dialog({
                autoOpen: false,
                title: $link.attr('title'),
                width: 600
            });

        $link.click(function() {
            $dialog.dialog('open');
            return false;
        });
    });
});
那么我的HTML是

<a href="reports?report=cows" class="open" title="Cows" class="open" >List Cows</a>
在加载的模式中,html可以是:

<a href="reports?report=cow_detail" class="open" title="Cow Detail" class="open" >Cow #43</a> <br />...
这将打开另一个包含细节的模式

因此,我正在寻找或期望能够在模式加载后加载第一位JavaScript,以获得新创建的class=open标记,在加载文档时不会看到这些标记


非常感谢

加载模式窗口时使用代码

$('#myModal').on('show.bs.modal', function (e) {
    $('a.open').each(function() {
        var $link = $(this);
        var $dialog = $('<div></div>')
            .load($link.attr('href'))
            .dialog({
                autoOpen: false,
                title: $link.attr('title'),
                width: 600
            });

        $link.click(function() {
            $dialog.dialog('open');
            return false;
        });
    });
});

谢谢,这不管用。myModal来自哪里?我没有任何div或任何成为Modal的东西。只是与我在问题中粘贴的代码类似的代码我知道你在做什么,加载后运行相同的脚本。这是一个好主意,我编辑了您提供的代码,使其在链接上工作,以检查它是否工作,如果我手动“更新”它,它确实工作。但如果我再次更新它,即运行它两次,每次我添加一个新模式时都会发生这种情况,那么我会得到两个等待打开的模式实例!