2016-02-11 3 views
0

Когда я нажимаю на кнопку, я получаю ее, чтобы добавить html-код. Внутри этого html-кода я хочу, чтобы у него был динамический идентификатор. У меня есть счетная переменная, называемая id_count, и я установил ее в 1, произнеся var id_count = 1;, а затем, когда нажимается кнопка, я добавляю ее в значение id_count. Тем не менее, я попытался добавить это в свой добавленный код, но он принимает только исходное значение id_count. Итак, если я дважды нажму кнопку, хотя счет будет до 3, переменная в моем заявлении append останется на уровне 1.Добавление изменяющейся переменной jquery

Я не знаю, почему это происходит. Я просмотрел множество других сообщений, но никто из них, похоже, мне не помогает, поэтому я пишу это. В принципе, я хочу иметь 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); 
}); 

ответ

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++; 
});