JQuery DOM узел с дополнительными селекторами - PullRequest
0 голосов
/ 15 октября 2010

Я пытаюсь сделать дополнительный выбор после передачи в DOM-узел в jQuery. В этом примере я пытаюсь показать «скрытую» кнопку отправки после изменения в поле выбора (обратите внимание, я передаю элемент FORM, а НЕ элемент SELECT:

<form id="UpdateRegistrationStatusForm">
   <select id="registration_status" onchange="AdjustRegistrationStatus(this.form)">
         <option value="1">approved</option>
         <option value="2">cancelled</option>
   </select>
   <input id="registration_status_update" type="submit" style="display:none" value="update"/>
</form>

Итак, код jQuery, который ХОЧУ ДЕЛАТЬ, НО НЕ РАБОТАЕТ выглядит примерно так ...

function AdjustRegistrationStatus(myForm)
{
     jQuery(myForm "#registration_status_update").show();
     if (jQuery(myForm "#registration_status").val() == 1)
     {
          //do some other things here...
     }
}

Я хочу начать с объекта FORM DOM и добавить дополнительные «строковые» селекторы. Любая помощь, пожалуйста?

Ответы [ 2 ]

1 голос
/ 15 октября 2010

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

var form = $('#UpdateRegistrationStatusForm');
form.find('.regupdate').show();
if (form.find('.regstatus').val() == 1)
{
    //...
}

.. но с идентификаторами нет особой причины.

1 голос
/ 15 октября 2010

Для этого используйте селектор #id (id должен быть уникальным, независимо от того, к чему он относится):

jQuery("#registration_status_update").show();

В других случаях , используйте .find() вот так:

jQuery("#registration_status_update").show();

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

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