Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Изменение значений с одинаковым id (https://javascript.ru/forum/dom-window/74611-izmenenie-znachenijj-s-odinakovym-id.html)

Murchik 24.07.2018 13:35

Изменение значений с одинаковым id
 
Доброго времени суток!
Пример:
<div id='block1'>
  <li id='name'>имя1</li>
  <li id='lastname'>фамилие1</li>
<div>
<div id='block2'>
  <li id='name'>имя2</li>
  <li id='lastname'>фамилия2</li>
<div>
<div id='block3'>
  <li id='name'>имя3</li>
  <li id='lastname'>фамилия3</li>
<div>

Люди добрые, подскажите, как в данном примере изменить 'name' и 'lastname' например в DIV с id 'block2'.
Заранее благодарен.

Я использовал ранее:
$("#name").empty();
$("#name").append('new_name');

Но в моем примере id одинаковые(

laimas 24.07.2018 13:42

Цитата:

Сообщение от Murchik
Изменение значений с одинаковым id

Эти значения должны быть уникальны!

Murchik 24.07.2018 13:45

Разве нельзя что-то под вид такого: в блоке с id = 'block1' изменить id 'name'?

Dilettante_Pro 24.07.2018 14:01

<div id='block1'>
  <li id='name'>имя1</li>
  <li id='lastname'>фамилие1</li>
<div>
<div id='block2'>
  <li id='name'>имя2</li>
  <li id='lastname'>фамилия2</li>
<div>
<div id='block3'>
  <li id='name'>имя3</li>
  <li id='lastname'>фамилия3</li>
<div>
<script>
  document.querySelector('#block2').querySelector('#name').textContent = 'Новое Имя';
</script>

Но никто ничего вам не гарантирует.

<div id='block1'>
  <li id='name'>имя1</li>
  <li id='lastname'>фамилие1</li>
<div>
<div id='block2'>
  <li id='name'>имя2</li>
  <li id='lastname'>фамилия2</li>
<div>
<div id='block3'>
  <li id='name'>имя3</li>
  <li id='lastname'>фамилия3</li>
<div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
   $('#block2>#name').html('Новое Имя');
</script>

j0hnik 24.07.2018 14:03

$('[id="name"]')

laimas 24.07.2018 14:08

Цитата:

Сообщение от Murchik
Разве нельзя что-то под вид такого: в блоке с id = 'block1'

Вы ставите вопрос об элементах с одинаковыми ID, а атрибут ID, это уникальный идентификатор, и зная об этом JS всегда будет возвращать первый найденный, если их будет несколько. То есть то чего вы хотите в заголовке темы сделать нельзя, кроме как для первого в наборе.


Часовой пояс GMT +3, время: 07:14.