jQuery: условно показать элемент на основе выпадающего списка

У меня есть два связанных раскрывающихся списка, в которых содержимое второго раскрывающегося списка зависит от выбора, сделанного в первом. Например, в следующем HTML-коде вы сначала выберете метод приложения. Если вы выберете «Антенна» в качестве метода применения, вы ответите на следующий вопрос, например «Размер антенны». В противном случае вам необходимо ответить на тип грунтового распыления.

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

Я могу добиться этой функции в JQuery (ниже кода JQuery). Но мой подход довольно глупый. Мой вопрос:

Is there a way to select the whole row, without using counting its sequence (nth-child())? Can I choose the whole row, based on selecting an element ID ? For example, can I first select $('#id_A') and then expand my selection to the whole row?

Is there a better way (a loop?) to achieve this hide or show feature rather than comparing all the possible choices (($(this).val() == "X") )?

Спасибо!

Вот HTML-код, а форма сгенерирована Django:

<code><div class="articles">
    <form method="GET" action=_output.html>
        <table align="center">
<tr><th><label for="id_application_method">Application method:</label></th><td><select  name="application_method" id="id_application_method">
<option value="">Pick first</option>
<option value="A">Aerial</option>
<option value="B">Ground</option>
</select></td></tr>

<tr><th><label for="id_A">Aerial Size Dist:</label></th><td><select name="aerial_size_dist" id="id_A">
<option value="A1" selected="selected">A1</option>
<option value="A2">A2</option>
</select></td></tr>

<tr><th><label for="id_B">Ground spray type:</label></th><td><select name="ground_spray_type" id="id_B">
<option value="B1" selected="selected">B1</option>
<option value="B2">B2</option>
</select></td></tr>
</table>                  
</form>
</div>
</code>

Вот код jQuery:

<code><script type="text/javascript" src=" https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.js"></script> 

<script>$(function() {
    $("tr:nth-child(2)").hide();
    $("tr:nth-child(3)").hide();

    $('#id_application_method').change(function() {
    ($(this).val() == "A") ? 
    $("tr:nth-child(2)").show() : $("tr:nth-child(2)").hide();

    ($(this).val() == "B") ? 
    $("tr:nth-child(3)").show() : $("tr:nth-child(3)").hide();
    });});</script>
</code>

Ответы на вопрос(2)

Ваш ответ на вопрос