 
			
				26.05.2023, 14:58
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 10.02.2016 
					
					
					
						Сообщений: 46
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Значение input radio на кнопки
			 
			
		
		
		
		Добрый день    
Помогите пожалуйста реализовать такую штуку. Есть список с радио-переключателями. Есть две кнопки «Удалить» и «Открыть». Нужно, чтобы при выборе элемента списка с радио-переключателем в кнопки передавалось вот такое /delite/1, /delite/2, /delite/3 etc и /open/1, то есть передаваться должно только id (т. е. цифра после последнего слэша). 
 
Список выводится динамически, через цикл, id присваивается, понятное дело, так же. Нужно передать значение value="<?= $data['id'] ?>". 
 
Как такое можно сделать? Я знаю, что javascript почти всемогущ, но я в нём не бум-бум, а на php видимо такого не нарисуешь   
Вот мой код:
 
<?php foreach ($list as $val): ?>
	<tr>
		<input type="radio" id="<?= $val['id'] ?>" name="plant" value="<?= $val['id'] ?>" />
		<label for="<?= $val['id'] ?>">
			<td><?= $val['subfamilia'] ?></td>
			<td><?= $val['number'] ?></td>
			<td><?= $val['taxon'] ?></td>
		</label>
	</tr>
<?php endforeach ?>
<input type="submit" name="delete" value="Удалить" />
<input type="submit" name="open" value="Открыть" />
  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось Chile, 26.05.2023 в 15:35.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.05.2023, 15:23
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Пожалуйста, отформатируйте свой код! 
Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
 
[html run]
... минимальный код страницы с вашей проблемой
[/html]
 
О том, как вставить в сообщение  исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте  http://javascript.ru/formatting.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.05.2023, 15:29
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 10.02.2016 
					
					
					
						Сообщений: 46
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от рони
			 
		
	 | 
 
	
		Пожалуйста, отформатируйте свой код! 
 
Для этого его можно заключить в специальные теги: js/css/html и т.п., например: 
[html run]
... минимальный код страницы с вашей проблемой
[/html]
  
О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.
	 | 
 
	
 
 Прошу прощения, вот, посмотрите, отредактировал.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.05.2023, 16:19
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 27.05.2010 
					
					
					
						Сообщений: 33,150
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Chile
			
		
	 | 
 
	| 
		вот, посмотрите,
	 | 
 
	
 
 не могу, ваше описание и код слишком расплывчаты.  
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				26.05.2023, 16:43
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 10.02.2016 
					
					
					
						Сообщений: 46
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от рони
			 
		
	 | 
 
	| 
		не могу, ваше описание и код слишком расплывчаты.
	 | 
 
	
 
 Сейчас попробую переформулировать    
Есть список, точнее строки таблицы, каждая из которой представляют собой комбинацию input radio и label. У каждой строки в input, есть value с уникальным id. Строки кликабельны. При клике на одну из строк, значение value должно передаваться на обе кнопки (button, input type=button, submit или что там допустимо использовать). В результате, одна из кнопок должна направлять на url — /delete/(выбранный id), а другая на url — /open/(выбранный id). Только не get-ом, т. к. оно добавит ненужного в url. Ну вот так    
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.05.2023, 09:54
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 03.02.2020 
					
					
					
						Сообщений: 2,777
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 У <tr> дочерними могут быть только <td> или <th> (но не input и label) 
<td> может быть дочерним только у <tr> (но не у label) 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.05.2023, 16:16
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 10.02.2016 
					
					
					
						Сообщений: 46
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от voraa
			 
		
	 | 
 
	
		У <tr> дочерними могут быть только <td> или <th> (но не input и label) 
<td> может быть дочерним только у <tr> (но не у label)
	 | 
 
	
 
 Да, но на сервере всё работает и на выходе XHTML 1.1 без вывода ошибок    
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.05.2023, 16:25
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 03.02.2020 
					
					
					
						Сообщений: 2,777
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Chile
			
		
	 | 
 
	| 
		Да, но на сервере всё работает и на выходе XHTML 1.1 без вывода ошибок
	 | 
 
	
 
 Дело не в сервере - ему без разницы какой код выводить, а в браузере. Как он такой html код воспримет, какое DOM дерево построит, и возможно ли с ним будет работать.
 
Вот как это будет выглядеть
 
<body>
<table>
    <tr>
        <input type="radio" id="val1" name="plant" value="1" />
        <label for="val1">
            <td>subfamilia</td>
            <td>number</td>
            <td>taxon</td>
        </label>
    </tr>
    <tr>
        <input type="radio" id="val2" name="plant" value="2" />
        <label for="val2">
            <td>subfamilia</td>
            <td>number</td>
            <td>taxon</td>
        </label>
    </tr>
</table>
</body>
Браузер воспринял это как
 
<body>
<input type="radio" id="val1" name="plant" value="1">
	<label for="val1">
    </label>
    <input type="radio" id="val2" name="plant" value="2">
    <label for="val1">
    </label>
<table>
<tbody>
    <tr>     
        <td>subfamilia</td>
            <td>number</td>
            <td>taxon</td>     
    </tr>
    <tr>       
        <td>subfamilia</td>
        <td>number</td>
        <td>taxon</td>       
    </tr>
</tbody>
</table>
</body>
А в XHTML 1.1 вообще не было элемента <label> 
XHTML вообще уже мертвый язык. Поэтому сейчас можно (нужно) писать на HTML 
<input type="radio" id="val1" name="plant" value="1"> без "/" в конце. Браузеры просто игнорируют это слеш.  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось voraa, 27.05.2023 в 17:01.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.05.2023, 19:25
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Аспирант 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 10.02.2016 
					
					
					
						Сообщений: 46
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от voraa
			 
		
	 | 
 
	
		Дело не в сервере - ему без разницы какой код выводить, а в браузере. Как он такой html код воспримет, какое DOM дерево построит, и возможно ли с ним будет работать. 
 
Вот как это будет выглядеть 
<body>
<table>
    <tr>
        <input type="radio" id="val1" name="plant" value="1" />
        <label for="val1">
            <td>subfamilia</td>
            <td>number</td>
            <td>taxon</td>
        </label>
    </tr>
    <tr>
        <input type="radio" id="val2" name="plant" value="2" />
        <label for="val2">
            <td>subfamilia</td>
            <td>number</td>
            <td>taxon</td>
        </label>
    </tr>
</table>
</body>
 
Браузер воспринял это как 
<body>
<input type="radio" id="val1" name="plant" value="1">
	<label for="val1">
    </label>
    <input type="radio" id="val2" name="plant" value="2">
    <label for="val1">
    </label>
<table>
<tbody>
    <tr>     
        <td>subfamilia</td>
            <td>number</td>
            <td>taxon</td>     
    </tr>
    <tr>       
        <td>subfamilia</td>
        <td>number</td>
        <td>taxon</td>       
    </tr>
</tbody>
</table>
</body>
 
 
А в XHTML 1.1 вообще не было элемента <label> 
XHTML вообще уже мертвый язык. Поэтому сейчас можно (нужно) писать на HTML 
<input type="radio" id="val1" name="plant" value="1"> без "/" в конце. Браузеры просто игнорируют это слеш.
	 | 
 
	
 
 А вы знаете, действительно, браузер выталкивал это всё из td: и input и label были вне table. Но когда я указал <?php header('Content-type: application/xhtml+xml'); ?>, то у него открылось новое видение и всё выводилось как запланировано   
Это наверное костыль, но работает же…)  
		
	
		
		
		
		
		
		
	
		
			
			
	
			
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				27.05.2023, 19:54
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 03.02.2020 
					
					
					
						Сообщений: 2,777
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от Chile
			
		
	 | 
 
	| 
		 то у него открылось новое видение и всё выводилось как запланировано
	 | 
 
	
 
 Верится с трудом. в xhtml те же правила для таблиц, что и для html 
+ в XHTML теги должны быть большими буквами  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось voraa, 27.05.2023 в 19:59.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 |  
  |