2014-12-03 5 views
1

Это DIV тегКак изменить текст метки с помощью JQuery

<div> 
    <label>some text 1</label> 
    <label>another text 1</label> 
</div> 
<button>button</button> 

Всякий раз, когда я нажимаю на кнопку, я добавлю Div тег. когда добавляется следующий тег div, он должен изменить цифру в тексте метки.

Например: В первом div это должно быть 1, а в следующем div оно должно быть 2.

Я получаю текст метки с помощью

var labelValue = $('div').find('label').map(function() { 
    return $(this).text().replace(/\d/,2); 
}).get(); 

То, что я хочу, чтобы изменить цифры в тексте этикетки на 2.

я получаю значение, но значение метки не получает изменилось html.

Как получить обновленное значение метки?

К сожалению, если есть какие-либо ошибки

ответ

0

Что-то вроде этого:

$('div').find('label').each(function(){ 
$(this).text($(this).text().replace(/\d/,2)); 
}); 
+2

Можно также сделать так: '$ (это) .text (функция (я, т) {возвращение t.replace (/ \ d /, 2) ;}); ' –

0

делают идентификатор для кнопки и вызвать событие щелчка для того чтобы достигнуть его .. попробовать это ..

<div> 
    <label>some text 1</label> 
    <label>another text 1</label> 
    </div> 
    <button id="btn">button</button> 
    <script> 
    $('#btn').click(function(){ 
     $('div').find('label').each(function(){ 
    $(this).text($(this).text().replace(/\d/,2)); 
    }); }); </script> 

вот скрипка. http://jsfiddle.net/Sarathv15/0jbq7em3/

0

Надеется, что это будет помощью,

var count = 0; 

$("#btn").click(function() { 
    count++; 
    $("#lbl").html(count); 
} 

</script> 
<div><label id="lbl">1</label></div> 

<button id="btn" type="button">Button</button> 
0

Так как вы хотите, чтобы заменить HTML здесь использовать

$(this).html("new value"); 
2

Вы можете попробовать это:

$('button').on('click', function(e) { 
    $('div:eq(0)').clone().insertAfter('div:last').find('label').filter(function(e) { 
     $(this).text($(this).text().replace(/\d/, $("div").length)); 
    }); 
}) 

Fiddle Link

0

возможно, тот, который вы хотите DEMO

<div id="show_divz"> 
    <div id="div_1"> 
     <label>some text 1</label> 
     <label>another text 1</label> 
    </div> 
</div> 
<button>button</button> 

в JS

$(document).on('click','button',function(){ 
    var getId = $(this).prev().find('div').last().attr('id'); 
    getId = getId.split('_'); 
    $("#show_divz").append('<div id="div_'+(parseInt(getId[1])+1)+'"><label>some text '+(parseInt(getId[1])+1)+'</label><label>another text '+(parseInt(getId[1])+1)+'</label> </div>'); 

}); 
Смежные вопросы