当我点击按钮时,我会附加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);
});
答案 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++;
});