2014-11-20 2 views
0

мне нужно помощь пробегает по всем моим отборным тегам в моем HTML-странице и выполнение некоторых функций при каждом измененииJQuery цикл через избранные тег на изменениях опции

<div id="product_options"> 
    <label>Color</label> 
    <select name="productOptions" id="colorOpt" style="margin-bottom:10px;"> 
      <option value="1">White</option> 
      <option value="3">Blue</option> 
    </select> 
    <label>Size</label> 
    <select name="productOptions" id="sizeOpt" style="margin-bottom:10px;"> 
     <option value="2">9oz</option> 
     <option value="4">10oz</option>**strong text** 
    </select> 
</div> 

Все, что внутри основного DIV является переменным, включая этикетки, имена и идентификаторы

Что я хочу сделать, это то, что кто-то обновляет одну из выбранных опций, мне нужно выяснить, какой элемент выбора выбрать и получить значение. Например, если они обновляют параметр цвета до синего, мне нужно вызвать вызов в jquery, чтобы показать, что элемент select с id colorOpt обновлен со значением 3

Любые идеи, которые я полностью потерял относительно того, как это сделать , Начало работы с этим, но не уверен, если его правильно или нет

$('#product_options').select("select").each(function(selected, index) { 


}); 

ответ

2

Похоже, что вы начали думать, что вам нужно перебрать каждый выбрать ... но так как вы сказали, что вам нужно «фигуру которые выбирают элемент, который они выбрали », вы можете положиться на ключевое слово this внутри обратного вызова change.

Fiddle: http://jsfiddle.net/vpqh3kjz/

Код:

// Every time someone updates either selected option fire a callback 
$('#product_options select').change(function() { 
    // `this` represents the element that changed 
    var id = this.id; 
    var value = this.value; 

    // Do something with your data here 
    console.log('select element id ' + id + ' was updated with ' + value); 
}); 
+0

Совершенная Спасибо – Yeak

1
$('select').on('change',function(){ 
    var value = $(this).val(); 
    alert(value); 
});