Я хочу отправить строку php в javascript-скрипт, когда я нажимаю кнопку submit. Я уже знаю, как передать переменную с json_encode
:Отправить php строку в javascript на submit
var str1 = <?php echo json_encode($str) ?>;
То, что я хочу знать, как передать переменную, которая должна быть выбрана из динамического выпадающего списка и который находится в while
цикле.
<section class="content">
<form id="admin" action="monitor.php" method="GET">
Servers :<br/>
<select name="category" id="category">
<option value="select">Select...</option>
<?php
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
$result = $redis->keys('*');
$i = 0;
while ($result[$i]!=null)
{
$Addr[$i] = $redis->hget($result[$i], 'Address');
$Port[$i] = $redis->hget($result[$i], 'Port');
$fullAdr[$i] = sprintf ("%s:%s", $Addr[$i], $Port[$i]);
$asdf[$i] = sprintf ("<option value='%s'>%s</option>", $fullAdr[$i], $result[$i]);
echo $asdf[$i];
$i++;
}
?>
</select><br/>
<input type="submit" value="Submit"/>
Теперь я не могу использовать var str1 = <?php echo json_encode($str) ?>;
, потому что я не знаю, какой выбор будет пользователю выбрать.
Каждый выбор содержит IP-адрес сервера. Мне нужно, чтобы IP передавал сценарий Javascript, когда я нажимаю кнопку submit.
php может только напрямую разговаривать с JS при первой сгенерированной странице. после этого php не может ничего делать, кроме как в ответ на запросы ajax от клиента. –
Позвольте мне вставить больше кода. Когда я нажимаю кнопку «Отправить», я создаю новую страницу. Я получаю новый url, который является URL-адресом, который содержит IP-адрес: http: //localhost/test/monitor.php? Category = http% 3A% 2F% 2Flocalhost% 3A4561 – Mirakurun
@MarcB Я редактировал вставленный код, теперь вы видите кнопка submit имеет действие, которое генерирует новый URL-адрес на той же странице. – Mirakurun