Есть следующий html
<table>
<tbody>
<!--шапка-->
<tr>
<th>
<select id="column_1" class="product-fields">
<option id="opt_1" selected="selected">opt_1</option>
<option id="opt_2">opt_2</option>
<option id="opt_3">opt_3</option>
<option id="opt_4">opt_4</option>
</select>
</th>
<th>
<select id="column_2" class="product-fields">
<option id="opt_1" selected="selected">opt_1</option>
<option id="opt_2">opt_2</option>
<option id="opt_3">opt_3</option>
<option id="opt_4">opt_4</option>
</select>
</th>
<th>
<select id="column_3" class="product-fields">
<option id="opt_1" selected="selected">opt_1</option>
<option id="opt_2">opt_2</option>
<option id="opt_3">opt_3</option>
<option id="opt_4">opt_4</option>
</select>
</th>
</tr>
<!--тело-->
<tr>
<td>Ячейка 1
<input type="hidden" name="" class="column_1" value="ячейка_1" />
</td>
<td>Ячейка 2
<input type="hidden" name="" class="column_2" value="ячейка_2" />
</td>
<td>Ячейка 3
<input type="hidden" name="" class="column_3" value="ячейка_3" />
</td>
</tr>
<tr>
<td>Ячейка 1
<input type="hidden" name="" class="column_1" value="ячейка_1" />
</td>
<td>Ячейка 2
<input type="hidden" name="" class="column_2" value="ячейка_2" />
</td>
<td>Ячейка 3
<input type="hidden" name="" class="column_3" value="ячейка_3" />
</td>
</tr>
<tr>
<td>Ячейка 1
<input type="hidden" name="" class="column_1" value="ячейка_1" />
</td>
<td>Ячейка 2
<input type="hidden" name="" class="column_2" value="ячейка_2" />
</td>
<td>Ячейка 3
<input type="hidden" name="" class="column_3" value="ячейка_3" />
</td>
</tr>
</tbody>
</table>
Нацарапал (назвать это "написал" не могу, php все-таки проще дается
) следующий код
// Выполняем весь скрипт по окончанию загрузки документа
$(document).ready(function() {
alert('Скрипт загружен');
// Логика следующая
// По событию change select:
// Получаем id активного option
// Получаем id родителя выбранного option (им является id select, он же номер колонки th)
// Устанавливаем атрибут name input'a равное id выбранного option, где id родителя option = классу input
// отслеживаем событие выбора select
$('select.product-fields').change(function() {
// получаем id активного option
var option_id = $('select.product-fields option:selected').attr('id');
alert(option_id);
// Получаем id родителя выбранного option
var option_parent = $('select.product-fields option:selected').parent().attr('id');
alert(option_parent);
// Устанавливаем атрибут name input'a равное id выбранного option, где id родителя option = классу input
$('input.'+option_parent).each(function() {
$(this).attr('name', option_id+'[]');
});
});
});
Ошибок в консоли нет, скрипт не кэшируется (проверял).
Но скрипт не работает почему-то
Выводит только "Скрипт загружен" и все.
Хочу сделать, чтобы при выборе соответствующего option из select, айдишник выбранного option присваивался атрибуту name инпутов (для последующей отправки на сервер) в соответствующей колонке. Но че-то по-моему даже выборка select не срабатывает
Где я напортачил? Еще правильно ли я использовал this?