jQuery的 - 在表格單元格SELECT標籤的手柄改變事件
我是新來的jQuery,我有這個表與小區內的下拉列表中,我有零知識如何搶「改變」的情況下,每。 我想要的是在每個下拉列表的更改選定項目的事件期間,我需要更新下拉選定值的相應下一個單元格。我已經嘗試使用ID來處理每個控件的事件,但是使用這種動態控件我沒有任何想法。
我只有一點知識,但沒有那麼多。
jQuery的 - 在表格單元格SELECT標籤的手柄改變事件
我是新來的jQuery,我有這個表與小區內的下拉列表中,我有零知識如何搶「改變」的情況下,每。 我想要的是在每個下拉列表的更改選定項目的事件期間,我需要更新下拉選定值的相應下一個單元格。我已經嘗試使用ID來處理每個控件的事件,但是使用這種動態控件我沒有任何想法。
我只有一點知識,但沒有那麼多。
/* Bind Change Event to Select (First) */
$('select.first').on('change', function() {
/* Set Value to Variable */
var selectedText = $(this).val();
/* Append Variable as Text to Next <td/> */
$(this).parents('td').next().text(selectedText);
}).change(); // Run Change on Init
/* Bind Change Event to Select (Second) */
$('select.second').on('change', function() {
/* Set Value to Variable */
var selectedText = $(this).val();
/* Append Variable as Text to 2nd <td/> */
$(this).parents('td').nextAll().eq(1).text(selectedText);
}).change(); // Run Change on Init
/* Bind Change Event to Select (Target Class) */
$('select.targetClass').on('change', function() {
/* Set Value to Variable */
var selectedText = $(this).val();
/* Append Variable as Text to <td.targetedClass/> */
$(this).parents('td').siblings('.targetedClass').text(selectedText);
}).change(); // Run Change on Init
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<thead>
<tr>
<td>Select</td>
<td>First</td>
<td>Second</td>
<td>Class</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<select class="first">
<option>Test 1</option>
<option>Test 2</option>
<option>Test 3</option>
<option>Test 4</option>
</select>
</td>
<td></td>
<td></td>
<td class="targetedClass"></td>
</tr>
<tr>
<td>
<select class="second">
<option>Test 1</option>
<option>Test 2</option>
<option>Test 3</option>
<option>Test 4</option>
</select>
</td>
<td></td>
<td></td>
<td class="targetedClass"></td>
</tr>
<tr>
<td>
<select class="first">
<option>Test 1</option>
<option>Test 2</option>
<option>Test 3</option>
<option>Test 4</option>
</select>
</td>
<td></td>
<td></td>
<td class="targetedClass"></td>
</tr>
<tr>
<td>
<select class="second">
<option>Test 1</option>
<option>Test 2</option>
<option>Test 3</option>
<option>Test 4</option>
</select>
</td>
<td></td>
<td></td>
<td class="targetedClass"></td>
</tr>
<tr>
<td>
<select class="targetClass">
<option>Test 1</option>
<option>Test 2</option>
<option>Test 3</option>
<option>Test 4</option>
</select>
</td>
<td></td>
<td></td>
<td class="targetedClass"></td>
</tr>
</tbody>
</table>
很快,非常感謝你,並會嘗試這一點。 –
嗨如果我想更新下一個列,該怎麼辦?謝謝。 –
@JeromeHolasca你基本上只需要使用任何'jQuery'選擇器:https://api.jquery.com/category/selectors/ – Daerik
請嘗試以下方法。
$("#id of your select drop down ").change(function() {
alert($('#id of your drop down option:selected').val());
$('#id of your input').val($('#id of your drop down option:selected').val());
});
您可以直接從''元素獲取值,而無需定位所選的''。定位所選的''是獲取「HTML數據 - *屬性」的好方法。而且,在它自己的回調中調用元素是多餘的。您可以通過利用'$(this)'實現同樣的功能。 – Daerik
你可以試試下面
$('#table').on('change', function() {
var selectedValue = $(this).val();
var row = $(this).closest('tr');
var nextfield = row.find('.classnamefornextfield');
$(nextfield).html(selectedVal);
}
這將起作用,但我建議不要使用「HTML id Attribute」,因爲該屬性指定HTML元素的唯一ID,該值必須在HTML文檔中唯一。我會建議使用類名。 – Daerik
你能告訴我們你嘗試過什麼? –