Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.07.2024, 14:03
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

как передать значение из ссылки
Здравствуйте! можете помочь, как передать значение из ссылки
<script>
var btn = document.querySelectorAll('a[href="#number"]');
for (let i = 0; i < btn.length; i++) {
  btn[i].onclick = function() {
    console.log('Кликнута кнопка номер ' + i);
  }
};
</script>
<div  id="1" value="1">111111</div>
<div  id="2" value="2">222222</div>
<div  id="3" value="3">333333</div>
<div  id="4" value="4">444444</div>
<div  id="5" value="5">555555</div>
<br>

<?php
echo #number;
?>
Ответить с цитированием
  #2 (permalink)  
Старый 08.07.2024, 17:20
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,196

Сообщение от leon2009sp
как передать значение из ссылки
А где у тебя ссылки?
Откуда и куда их нужно передавать?
Ответить с цитированием
  #3 (permalink)  
Старый 09.07.2024, 07:02
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

пример:
window.addEventListener('DOMContentLoaded', function()
{
[].forEach.call(document.querySelectorAll('.old'), function(item)
{
 item.addEventListener('click', function()
 
{ if(document.querySelectorAll('.new').length  > 0 && !item.classList.contains('new')) {return} ;

 item.classList.toggle('new');
 var res = [].map.call(document.querySelectorAll('.new'),
 function(el) {
 return el.id
 })
 document.querySelector('.show').innerHTML = res.length ? '' + res : ''
 });
 });
});

<table width="200" summary="">
<tbody>
 <tr>
<td class="old" id="1" value="1">1</td>
<td class="old" id="2" value="2">2</td>
<td class="old" id="3" value="3">3</td>
</tr>
<tr>
<td class="old"  id="4" value="4">4</td>
 <td class="old" id="5" value="5">5</td>
 <td class="old" id="6" value="6">6</td>
</tr>
</tbody>
</table>
<div class="show">====</div>

только это сложный. (для меня) как из div передать значения?
Ответить с цитированием
  #4 (permalink)  
Старый 09.07.2024, 07:42
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

готово сделано вот что хотел:
<html>
    <head>
        <script type="text/javascript">
            function myFunc(id)
            {
               document.getElementById("content").innerHTML = id;			   
            }
        </script>
    </head>
    <body>
<div  id="1" value="1" onClick="myFunc(this.id);">111111</div>
<div  id="2" value="2" onClick="myFunc(this.id);">222222</div>
<div  id="3" value="3" onClick="myFunc(this.id);">333333</div>
<div  id="4" value="4" onClick="myFunc(this.id);">444444</div>
<div  id="5" value="5" onClick="myFunc(this.id);">555555</div>
<?php
$test = '<div id="content"></div>';
print_r ($test);
?>
</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 09.07.2024, 09:11
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

почему я не могу установить значение в value ?
<script type="text/javascript">
            function myFunc(id)
            {
			let str = id;				
            document.getElementById("content").innerHTML = str;			   
            }
        </script>
    </head>
    <body>
<div  id="1" value="1" onClick="myFunc(this.id);">111111</div>
<div  id="2" value="2" onClick="myFunc(this.id);">222222</div>
<div  id="3" value="3" onClick="myFunc(this.id);">333333</div>
<div  id="4" value="4" onClick="myFunc(this.id);">444444</div>
<div  id="5" value="5" onClick="myFunc(this.id);">555555</div>
<?php 
$test = '<div id="content"></div>';
echo '<input type=text name=num1 value='.$test.'>';
?>
Ответить с цитированием
  #6 (permalink)  
Старый 09.07.2024, 09:22
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,196

Сообщение от leon2009sp
[].forEach.call(document.querySelectorAll('.old'), function(item) {})
У коллекции, что возвращает querySelectorAll(), есть собственный метод forEach().
Т.ч. не стоит городить такой огород. Будет работать и вот так

document.querySelectorAll('.old').forEach( function(item) {})
Ответить с цитированием
  #7 (permalink)  
Старый 09.07.2024, 09:24
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,196

Сообщение от leon2009sp
почему я не могу установить значение в value ?
Не у всех элементов ДОМ есть value... У DIVов - так точно его нет.

Для такого рода данных используй дата-атрибуты

<div  data-value="1">111111</div>
Ответить с цитированием
  #8 (permalink)  
Старый 09.07.2024, 09:32
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,196

Сообщение от leon2009sp
только это сложный. (для меня) как из div передать значения?
Не стоит на каждый однотипный элемент вешать обработчик. Повесь его на родителя и он будет выполнять всю работу один, на всех дочерних элементах.
Вот пример такого

<section>
	<div data-value="1">111111</div>
	<div data-value="2">222222</div>
	<div data-value="3">333333</div>
	<div data-value="4">444444</div>
	<div data-value="5">555555</div>
</section>

<script>
document.querySelector('section').addEventListener('click', e => {
	const o = e.target.closest('[data-value]')
	if (!o) return
	alert(o.dataset.value)
})
</script>
Ответить с цитированием
  #9 (permalink)  
Старый 09.07.2024, 14:30
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

в input как число не заносит:
document.querySelector('section').addEventListener('click', e => {
	const o = e.target.closest('[data-value]')
	if (!o) return	
	document.getElementById("content").innerHTML = (o.dataset.value)
})
</script>
<div id="content"></div>
<?php
$test = '<div id="content"></div>';
echo '<input type="text" value="'.$test.'">';
?>

он его как текст видит
let str = id;
так тоже пробовал
Ответить с цитированием
  #10 (permalink)  
Старый 10.07.2024, 09:13
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,196

Сообщение от leon2009sp
он его как текст видит
Разумеется. В число придется преобразовывать...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать значение сессии через js Zhenyaxxxx Серверные языки и технологии 4 08.05.2023 20:57
Видимость переменной при асинхронном запросе. Как передать и получить значение? Stroganov Ilya Общие вопросы Javascript 10 17.10.2014 17:33
как все ссылки передать ajax anton41k Общие вопросы Javascript 2 05.09.2014 21:22
как передать это значение в jquery qwertycal Общие вопросы Javascript 4 30.01.2013 18:12
как правильно передать значение переменной? kentnsk Общие вопросы Javascript 6 25.02.2011 11:49