附加更改变量jquery

时间:2016-02-11 11:29:15

标签: jquery html

当我点击按钮时,我会附加html代码。在这个HTML代码中,我希望它具有动态ID。我有一个名为id_count的计数变量,我通过说var id_count = 1;将其设置为1,然后单击该按钮时,我将id_count值添加一个。但是,我尝试在附加的代码中添加此内容,但它只需要id_count的原始值。所以,如果我点击我的按钮两次,虽然计数将达到3,我的追加语句中的变量保持为1。

我不知道为什么会这样。我看了很多其他帖子,但它们似乎都没有帮助我,因此我写这篇文章的原因。基本上我想为所有附加元素提供unqiue id,但我不确定如何。对不起,这是一个重复的问题。

这是我的jquery代码:

$j = $.noConflict();
var id_count = 1;
var id_sub = 1;
var htmlcode = "<div class='fieldset' id='fieldset_"+id_count+"'> <h2>Child Information</h2></div>";
$j(".btn-addchild").click(function(){
    id_count++;
    alert(id_count);
    $j(".child-info-content").append(htmlcode);
});
$j(".child-info-content").on('click','#removechild',function() {
    $j(this).parents('.fieldsetAdditional').slideUp("normal",function() {$j(this).parents('.fieldsetAdditional').remove();});
    id_count = id_count - id_sub;
    alert(id_count);
});

1 个答案:

答案 0 :(得分:2)

htmlcode的定义移到函数中。将其放在函数外部时,每次执行单击函数时都不会执行它。

$j(".btn-addchild").click(function(){
    alert(id_count);
    var htmlcode = "<div class='fieldset' id='fieldset_" + id_count + "'> <h2>Child Information</h2></div>";
    $j(".child-info-content").append(htmlcode);
    id_count++;
});