Отображение моих выпадающих меню совсем не работает - PullRequest
0 голосов
/ 01 декабря 2011

У меня есть функция javascript, в которой, если значения «abc», «abcd» или «abcde» были выбраны из выпадающего меню «optionDrop», затем отобразить другое выпадающее меню «numberDrop», иначе выведите «N / A».Проблема в том, что внизу меню "numberDrop" не появляется вообще.Что я сделал не так?

Ниже приведена функция javascript:

      function getDropDown() {
         var optionDrop = document.getElementsByName("optionDrop");
        var noOfAnswers = document.getElementById("noOfAnswers");
        var numberDrop = document.getElementsByName("numberDrop");

    if (optionDrop.value = "abc" || optionDrop.value = "abcd" || optionDrop.value = "abcde"){
numberDrop.style.display = "block";
    }else{
                     noOfAnswers.innerHTML = "N/A";
    }

                }

Ниже представлено html-меню в форме:

<form id="enter" action="<?php echo htmlentities($_SERVER['PHP_SELF']); ?>" method="post" onsubmit="return validateForm(this);" >
<table id="middleDetails" border="1">

<tr>
    <td>Option Type:</td> 

 <td>
        <select name="optionDrop" onClick="getDropDown()">
<option value="">Please Select</option>
<option value="abc">ABC</option>
<option value="abcd">ABCD</option>
<option value="abcde">ABCDE</option>
<option value="trueorfalse">True or False</option>
<option value="yesorno">Yes or No</option>
</select>
    </td>
<tr>
<td colspan="2"></td>

<td>Number of Answers:</td>
<td id="noOfAnswers">
<select name="numberDrop" id="numberDropId">
<option value=""></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
</td>
</tr>
</table>
</form> 

Код CSS:

            /*css for QandATable.php*/

#numberDropId{
                display:none;
            }

Ответы [ 2 ]

1 голос
/ 01 декабря 2011

Попробуйте:

if (optionDrop.value === "abc")

=== является точным совпадением того же типа.Так что это должно соответствовать abc.= для назначения.

0 голосов
/ 01 декабря 2011

Измените свою функцию JavaScript, как показано ниже.

  function getDropDown() {
         var optionDrop = document.getElementsByName("optionDrop");
        var noOfAnswers = document.getElementsByName("noOfAnswers");
        var numberDrop = document.getElementsByName("numberDrop");
    if (optionDrop[0].value == "abc" || optionDrop[0].value == "abcd" || optionDrop[0].value == "abcde"){
numberDrop[0].style.display = "block";
    }else{
                     noOfAnswers.innerHTML = "N/A";
    }

                }

Удачи.

Прасад

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