Вопрос о классе в div - PullRequest
       2

Вопрос о классе в div

0 голосов
/ 12 мая 2011

Если у меня есть этот код:

 <div id="one">
        <label>first</label> 
        <select name="area" class="area">
        <option selected="selected">First</option>
    </div>

 <div id="two">
        <label>second</label> 
        <select name="area" class="area">
        <option selected="selected">Second</option>
 </div>

Возможно ли что-то подобное?

  $("#one: .area").change(function() {}

or 

 $("#two: .area").change(function() {}

Не работает, кто-нибудь может объяснить, почему?

Ответы [ 7 ]

4 голосов
/ 12 мая 2011

Попробуйте:

<div id="one">
        <label>first</label> 
        <select name="area" class="area">
        <option selected="selected">First</option>
         </select>
    </div>

 <div id="two">
        <label>second</label> 
        <select name="area" class="area">
        <option selected="selected">Second</option>
        </select>
 </div>

$("#one select.area").change(function() {}
3 голосов
/ 12 мая 2011

Это, вероятно, то, что вы хотите

$("#one > select.area").change(function() {});

или

$("#two > select.area").change(function() {}

Также убедитесь, что вы завершили свой тег выбора.У вас есть следующий HTML

<div id="one">
    <label>first</label> 
    <select name="area" class="area">
    <option selected="selected">First</option>
</div>

Это должно быть

<div id="one">
    <label>first</label> 
    <select name="area" class="area">
        <option selected="selected">First</option>
    </select>  <!-- Note the Ending tag for the select -->
</div>
3 голосов
/ 12 мая 2011

Удалите : из вашего кода ... $("#one .area") Также было бы неплохо закрыть выбранные элементы </select>

2 голосов
/ 12 мая 2011

У вас есть лишние ненужные : в вашем селекторе, используйте: $("#one .area").change(function() {});

Смотрите пример: http://jsfiddle.net/fermin/9YM3a/1/

2 голосов
/ 12 мая 2011

Да, но вы должны удалить : в селекторе.

$("#one .area").change(function() { alert($(this).val()) });
0 голосов
/ 12 мая 2011

Вы можете установить div в качестве области.

$('.area',$(this).parent('div:one')).change(function() {}
0 голосов
/ 12 мая 2011

Если вы спрашиваете, как выбрать .area, который является потомком #one или #two, то вы почти правы.

$('#one > .area').change(function() {}

The > означает «Дитя», поэтому вы будете выбирать .area, который является дочерним элементом #one

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