Радио-кнопка проверена проблема - PullRequest
0 голосов
/ 14 октября 2011

Насколько я понимаю, мой вопрос был о браузере. Я спросил, есть ли какое-либо решение, чтобы сказать браузеру, чтобы перемещать флажок = "проверен" между переключателями. Я думал, что будет быстрое решение для этого, но этот случай просто сбивает с толку. Я изменил свой код сейчас. Сейчас я использую элемент списка выбора.

У меня есть форма, и я получаю фактические настройки с php, но дело в следующем:

Когда переключатель 1 появляется checked="checked", если это актуально, после этого, когда я переключаюсь на другую опцию в посте, я получаю значение checked="checked", мне было интересно, есть ли решение для этого или нужен Javascript как на клик "this.checked другой снимите флажок"?

if($type==1) { $like = 'checked="checked"'; } else { $ref='checked="checked"'; }

<form method="post" action="process.php" id="fbform" name="fbform">
<div class="radio">
<p>Like button: </p>
<input type="radio" name="tipi" <?=$like?> value="1" />
</div>
<div class="radio1">
<p>Link:</p> 
<input type="radio" name="tipi" <?=$ref?> value="2" />
</div>
</form>

Код файла Process.php

<?php
$mysql->update('settings'," tipi='".$_POST['tipi]."' ");
?>

Ответы [ 5 ]

0 голосов
/ 14 октября 2011

Ghostology: Не уверен насчет вашего запроса ... Но все, что я могу сделать, это объяснить вам работу переключателя.

предположим, что внутри формы есть две кнопки-переключателя:

<input type="radio" name="radioTest" value="1" checked />
<input type="radio" name="radioTest" value="0"  />

Здесь флажок указывает кнопку, которая будет проверена (или включена) во время загрузки страницы.

Теперь предположим, что мы проверили вторую кнопку и отправили эту форму, теперь мы получаем значение 0 для параметра 'radioTest', так как переключатель со значением 0 отмечен.

Теперь, когда страница загружается снова с некоторым значением переключателей. Вы хотите, чтобы соответствующий переключатель был проверен. В этом случае, я думаю, вы можете использовать условие if / else, например: <% if (radioTest.value == 1) {%> <%} else {%> <%}%>

0 голосов
/ 14 октября 2011

вам нужны очень простые изменения в вашем коде. См. Ниже код:

Прежде всего вам нужно определить переменные в самой верхней части страницы / Код:

$like = ""; 
$ref = "";

Теперь ваш код будет работать хорошо, насколько мне известно ..

Спасибо.

0 голосов
/ 14 октября 2011

Вы можете добиться большего успеха с этим. Кроме того, идентификаторы используются только для CSS или JS, и, кроме того, они должны быть УНИКАЛЬНЫМИ.

<div class="radio">
<p>Like button: </p>

<input type="radio" name="tipi" id="tipi" <?php echo ($type == '1')?'checked="checked"' : '';?> value="1" />

</div>

<div class="radio1">

<p>Link:</p> 
<input type="radio" name="tipi" id="tipi2" <?php echo ($type=='2')?'checked="checked"' : '';?> value="2" />

</div>

Затем вы получаете доступ к ним в php

$tipi = $_POST['tipi']; //either 1 or 2
0 голосов
/ 14 октября 2011

Вот что я бы сделал:

<div class="radio">
  <p>Like button: </p>
  <input type="radio" name="tipi" id="tipi1" value="1"<?php if ($type == 1) echo ' checked="checked"'; ?> />
</div>
<div class="radio1">
  <p>Link:</p> 
  <input type="radio" name="tipi" id="tipi2" value="2"<?php if ($type != 1) echo ' checked="checked"'; ?> />
</div>

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

0 голосов
/ 14 октября 2011

флажок - это маркерный тег - ему все равно, если слово «проверено» присутствует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...