如何在对话框中显示javascript变量

How to display javascript variable in a dialog box?

本文关键字:显示 javascript 变量 对话框      更新时间:2023-09-26

我有一个搜索表单,可以显示与搜索过滤器匹配的人员列表。显示搜索结果后,我想要一个链接(id=names_list),单击该链接时,会显示一个对话框,显示人名列表。

我不明白为什么这个代码不起作用:

 <a id="names_list" href="#">Names list</a>
    {% for person in persons %}
       <a class="name_for_mylist">{{ person | name }}</a>
    {% endfor %}
    <script>        
            $(document).ready(function()    
            {
                $("#names_list").click(function(event){
                    event.preventDefault();
                    var list = "";
                    $(".name_for_mylist").each(function(){
                        list += $(this).html() + "; ";
                    });
                    var box=list.dialog({ title: "Names list" });
                    box.show();
                });
            });
    </script>

非常感谢你的帮助!

list是一个字符串,它没有方法.dialog

你应该这样做:

$(document).ready(function () {
    $("#names_list").click(function (event) {
        event.preventDefault();
        var list = "";
        $(".name_for_mylist").each(function () {
            list += $(this).html() + "; ";
        });
        $('<div>').html(list).appendTo('body').dialog({
            title: "Names list"
        });
    });
});
var liste = "";
$(".name_for_mylist").each(function(){
  list += $(this).html() + "; ";
});

u声明了liste变量,并将$(this).html()添加到list变量中。

尝试将list+= $(this).html()+ ';';更改为liste+= $(this).html()+ ';';

更改此

var box=list.dialog({ title: "Names list" });

到这个

var box=$(list).dialog({ title: "Names list" });

你可以把该死的东西放在jquery包装器中的任何东西附近。

大约完成了一半的javascript,

var liste = "";

"list"末尾的额外"e"