У меня есть простой скрипт на HTML, использующий выпадающее меню. Когда выбрано значение 1, пользователь может писать в текстовом поле, если выбрано значение 2, текстовое поле отключается.
Однако я изменил значения выпадающего меню, так что одно значение было из таблицы mysql (с использованием PHP), а другое осталось 'option value =' 1 ''. Пока что ни одно из текстовых полей не отключено. Ниже приведен код.
`<script type="text/javascript">
function findselected() {
if (document.form.selmenu.value == <?php echo $id; ?>) {
document.form.txtField.disabled=true;
// return false; // not sure this line is needed
} else {
document.form.txtField.disabled=false;
// return false; // not sure this line is needed
}
}
`
И раздел PHP
if(mysql_num_rows($SQL) == 1)
{
echo "<select name='selmenu' onChange='findselected()'>";
echo "<label>TCA_Subject</label>";
while ($row=mysql_fetch_array($SQL)) {
echo "<option value='$id'>$thing</option>";
echo "<option value='2'>Choice 2</option>";
}
}
echo "<option value=$userid>'Choice 1'</option>";
?> <option value='2'>Choice 2</option>";
</select>
Я попытался извлечь значение второго параметра из цикла, поместить его в html, редактируя переменную в функции javascript. В PHP нет ошибки, поскольку он получает правильные результаты и отображает их, но текстовое поле не отключается.
Кто-нибудь знает возможное решение?
Спасибо
Изменения, внесенные для проверки простой переменной php
<script type="text/javascript">
function findselected() {
if (document.form.selmenu.value == <?php echo $wah;?>) {
document.form.txtField.disabled=true;
// return false; // not sure this line is needed
} else {
document.form.txtField.disabled=false;
// return false; // not sure this line is needed
}
}
</script>
<?php $wah = 'hello';
echo $wah;
?>
<form action="dump.php" method="POST" name="form">
<select name="selmenu" onChange="findselected()">
<option value="1">Choice 1</option>
<option value="<?php $wah;?>">Choice 2</option>
</select>