0

我在按钮单击时循环一个 div。但我需要的是最初隐藏 .loop div 并在单击按钮时显示它。

目前它的克隆正在完美地发生,我唯一需要的是,最初不显示 div.loop。默认只显示按钮。

这是我当前的代码和演示

clicks = 0;
$('button').on('click', function () {
    if ($('div.loop').length < 5) {
        clicks++;
        newLoopDiv = $($('div.loop')[0]).clone().appendTo(".container");
        $('input', newLoopDiv).each(function (index, element) {
            $(element).attr('name', $(element).attr('name') + clicks);
        });
    }
});
4

2 回答 2

2
clicks = 0;
$('button').on('click', function () {
  $('div.loop').show();
    if ($('div.loop').length < 5) {
        clicks++;
        if(clicks>1){
            alert("more 1");
            newLoopDiv = $($('div.loop')[0]).clone().appendTo(".container");
            $('input', newLoopDiv).each(function (index, element) {
            $(element).attr('name', $(element).attr('name') + clicks);
        });
        }
        else{
          alert("asd");
        newLoopDiv = $($('div.loop')[0]).appendTo(".container");
            $('input', newLoopDiv).each(function (index, element) {
            $(element).attr('name', $(element).attr('name') + clicks);
        });


    }

    }
}); 

用您的代码替换并尝试此代码..希望这是您需要的..

JSBIN 演示

于 2013-08-26T07:29:56.413 回答
0

你有几个选择。您可能最初使用 CSS 隐藏模板,然后在克隆时删除隐藏克隆的 CSS。另一种选择是完全使用 JavaScript 创建您的“循环”元素,然后再附加它。

演示选项 1 - 在第一个 div.loop 模板上使用隐藏类,使用.removeClass().

演示选项 2 - 使用在 jQuery 中创建的模板,而不是选择 shell 元素。

注意:我已经更新了first nameto的 name 属性first_name

于 2013-08-26T07:37:05.577 回答