[英]How do I get the value/text of a dropdown box that got inserted into a table row via JQuery
我有一個動態表,用戶可以單擊“添加”按鈕,一旦用戶執行此操作,表中將出現新行。 這是通過JQuery完成的。
在每一行中,每一列都有一個下拉框(帶有預定義的值)。 如何獲得此下拉框的選定值? 除非通過JQuery添加,否則下拉框將永遠不會存在於頁面上。
我想根據投遞箱的值更改下一列的值。 例如,如果用戶選擇下拉框,則下拉框將出現在下一列中
為了測試JavaScript / JQuery是否正常工作,等等,點擊“添加”按鈕后,我顯示了一個愚蠢的警報消息。 這個工作成功了。
下拉框的值更改后,我嘗試顯示另一條消息,但我一直沒有成功。
我想我的問題是,我能否獲得DOM上不存在的元素的值,除非它是動態創建的。
任何幫助將不勝感激。
謝謝。
我的HTML:
<div id="etDiv">
<table style="width:100%" border="dotted" class="createElementTable" id="table">
<caption>
<!-- To do -->
<tr class="tableText">
<th class="tableText">Required</th>
<th class="tableText">Label</th>
<th class="tableText">Type</th>
<th class="tableText">Values</th>
<th class="tableText">Decrease/Increase</th>
</tr>
</table>
</div>
我的JQuery:
$('#addButton').click(function () {
count = count + 1;
alert("Element: " + count + " added.");
$required = "<input type='checkbox' name='check'>";
$label = "<input type='text' placeholder='Enter your label'> </input>";
$type = "<SELECT name='type' onchange='typeCheck(this)'> <>Type</option><OPTION value='header'>Header</option><OPTION value='hr'>HR</option><OPTION value='textbox'>Text Box</option><OPTION value='datefield'>Date Field</option><OPTION value='person'>Person</option><OPTION value='dropdownbox'>Dropdown Box</option><OPTION value='image'>Image</option><OPTION value='checkboxgroup'>Checkbox Group</option><OPTION value='radiogroup'>Radio Group</option><option>" + count + "</option> </select>";
$values = "To Do";
$capacity = "To Do";
$element = "<tr class='child'> <td>" + $required + "</td> <td>" + $label + "</td> + <td>" + $type + "</td> <td>" + $values + "</td> <td>" + $capacity + "</td>";
$('#table tr:last').after($element);
});
我希望獲得$ type的值。
擺脫onchange='typeCheck(this)'
並使用jQuery .on()
函數的事件委托語法:
$('table').on('change', 'select[name="type"]', function(){
console.log($(this).val())
})
document.getElementById(this).value
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.