我想使用jquery通过for循环创建标签

时间:2016-08-15 12:39:15

标签: javascript jquery

我想使用for循环动态创建标签......这就是我所做的,它不起作用,帮助我解决这个问题

$(document).ready(function() { 
    function create_labels(strt, end, overlay_body) {
        for (var i = strt; i < end; i++) {
            var labels=jQuery('<label id=lbl>hahahahha</label>');
            labels.appendTo(overlay_body);
        }
    }
});

var strt = 9;
var end = 17;

var overlay_body = jQuery('<div id=overlay_body></div>');
overlay_body.appendTo(document.body);
create_labels(strt,end,overlay_body);

1 个答案:

答案 0 :(得分:0)

您应该学习如何调试您的javascript代码。如果您检查了浏览器控制台,您就会确切地知道问题所在。要在Google Chrome中启动浏览器控制台,您可以单击Ctrl + Shift + J.

问题是jQuery加载函数无法访问{strong>外部 create_labels()函数。修复此问题的一种方法是在jQuery加载中移动调用此函数的逻辑:

   $(document).ready(function () {
    var strt = 9;
    var end = 17;

    function create_labels(strt, end, overlay_body) {
        for (var i = strt; i < end; i++) {
            var labels = jQuery('<label id=lbl>hahahahha</label><br />');
            labels.appendTo(overlay_body);
        }
    }

    var overlay_body = jQuery('<div id=overlay_body></div>');
    overlay_body.appendTo(document.body);
    create_labels(strt, end, overlay_body);
});