如何选择<input />字段周围的外部<div>?

pem*_*ahl 5 jquery jquery-selectors

我正在用jQuery做我的第一步,需要帮助为我的问题选择合适的选择器.我在Django模板中有以下HTML:

{% for field in form %}

    <div class="control-group">

        <label class="control-label" for="{{ field.label }}">{{ field.label }}</label>

        <div class="controls">

            {% if field.html_name == "field_1" %}

                <input class="input-xlarge" id="{{ field.label }}" type="text" name="{{ field.html_name }}" />

            {% elif field.html_name == "field_2" %}

                <input class="input-mini" id="{{ field.label }}" type="text" name="{{ field.html_name }}" />

            {% endif %}

        </div>

    </div>

{% endfor %}
Run Code Online (Sandbox Code Playgroud)

我需要对<input />我有以下选择器的字段做一些事情:

var $inputField1 = $('input[name="field_1"]');
var $inputField2 = $('input[name="field_2"]');
Run Code Online (Sandbox Code Playgroud)

我现在的问题是我需要能够<div class="control-group"></div>为特定<input />字段选择一个以改变它的类<div>.我怎么做?我需要父选择器吗?我有点困惑.请帮忙.非常感谢你!

Jam*_*ice 8

你不能只用选择器来做到这一点.您将需要像当前一样选择input元素,然后使用该.closest()方法获取祖先div:

var controlGroup = $('input[name="field_1"]').closest('.control-group');
Run Code Online (Sandbox Code Playgroud)