проверить выпадающий список от php до html с помощью javascript? - PullRequest
0 голосов
/ 25 октября 2011

Хорошо, название этого вопроса может быть немного запутанным, и я попытаюсь объяснить его вам: у меня есть php-файл с массивом, содержащим несколько полей формы, например:

$var = array(0 => '<input type=....>', 1=> '<input type=....>');

и я создал цикл while для цикла по массиву, чтобы показать их в таблице, что-то вроде этого:

echo '<table>';
  while($row = mysql_fetch_array($result)){
    $num = $row['fieldId'];
    $field = $num.' '.$row['field'];
    echo '<tr><td>'.$field.'</td>';
    echo '<td>'.$var[$q].'</td></tr>';
    echo '<tr><td>&nbsp;</td></tr>';
    $q++;
  }; echo '</table>';

я включил этот php-файл в html-файл, чтобы я мог получить таблицу с двумя столбцамипервое с $ field из базы данных и второе с $ var [$ q], которое является некоторым полем ввода, взятым из массива $ var.Верьте или нет, но на самом деле это работает, теперь проблема в том, что внутри этого массива $ var у меня есть поле <select> с несколькими опциями, я хочу проверить это поле с помощью некоторого JavaScript, но по какой-то причине я не могу получить значенияназначено в <option value="SOMEVALUE">.я не знаю почему, но я не могу, одна вещь, которую я нахожу странной, это то, что в этом массиве $ var у меня есть несколько переключателей, которые я CAN проверяет с помощью javascript.

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

<html>....
<form name="mainForm">
  <?php
    include 'myPhpFile.php';
  ?>
  <input type="button" name="btnNext" onclick="functionToValidate();">
</form>
...</html>

, поэтому в основном, когда я включаю свой php-файл, он создает таблицу и добавляет в нее поля, заполняя их данными изБаза данных mysql и некоторые поля ввода с использованием массива $ var, показанного выше всего, что работает, но проблема в том, что когда я нажимаю следующую кнопку, она вызывает функцию javascript для проверки полей, все работает, пока не дойдет до ввода <select>, яможет проверять переключатели, текстовые поля и текстовые поля, но я не могу проверить эти <select>

. Я использую функцию javascript:

function myFunctionNameHere(){
if(!document.mainForm.p1_1[0].checked && !document.mainForm.p1_1[1].checked)
      alert("1 - some warning here");
    else if(!document.mainForm.p1_2[0].checked && !document.mainForm.p1_2[1].checked)
      alert("2 - some warning here");
    else if(!document.mainForm.p1_3[0].checked && !document.mainForm.p1_3[1].checked)
      alert("3 - some warning here");
    else if(!document.mainForm.p1_4[0].checked && !document.mainForm.p1_4[1].checked)
      alert("4 - some warning here");
    else if(!document.mainForm.p1_5[0].checked && !document.mainForm.p1_5[1].checked)
      alert("5 - some warning here");
    else if(!document.mainForm.p1_6[0].checked && !document.mainForm.p1_6[1].checked)
      alert("6 - some warning here");
    else if(document.mainForm.p1_7.value == "")
      alert("7 - some warning here");
    // this condition does not work:
    else if(document.mainForm.p1_8.selectedIndex == 0)
      alert("8 - some warning here);
   // can't get the selectd field from the html select field
    else
      window.location = "OTHERPAGE.html";
}

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

Извините, я действительно решил эту проблему, в html-коде из моего массива php были некоторые ошибки.Теперь это на самом деле работает.Спасибо.

1 Ответ

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

это то, как вы получаете доступ к выбранным значениям в JavaScript:

<form name="mainform">
    <select name="dropbox_select">
        <option value="value0">option0</option>
        <option value="value1">option1</option>
        <option value="value2">option2</option>
    </select>
</form>

document.forms.mainform.dropbox_select.options[0].value
document.forms.mainform.dropbox_select.options[1].value
document.forms.mainform.dropbox_select.options[2].value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...