如何在 js 中获取动态下拉列表的选定值
How to get the selected value of a dynamic drop down in js
我正在模板中创建动态下拉列表。我无法获得这些的选定值。
var newjobDropDown = $(document.createElement('div')).attr("id", 'jobDropDown' + counter);
newjobDropDown.after().html('<label><?php echo __(Job Vacancy); ?></label>' +
'<select id="jobDropDown' + counter +'"'+' onchange="validate()"'+' class="vacancyDrop"'+'>'+buildVacancyList()+'</select>'+
'<span onclick="removeDrop(event)"'+'class="removeText"'+ 'id="removeButton'+counter+'">'+remove+'</span>'+'<br class="clear" />');
newjobDropDown.appendTo("#TextBoxesGroup");
我使用以下代码来获取值,但我得到了一个空值。
$('#jobDropDown1').val()
你打电话
$('#jobDropDown1').val()
但你选择看起来像
<select id="jobDropDown'
将1
添加到其 id 中,它将完成
你重复了id
s(你不应该这样做(。您有 2 个选择:
1(更改为不同的id,然后通常使用jquery选择它
2(如果你不能不想要,你应该做:
$('select#jobDropDown1').val()
有了这个,我们通过标签名称区分两个相等的 ID。
希望这有帮助。干杯
从您发布的代码来看,您正在创建两个具有相同id
的元素 - select
和前面的div
。来自 jQuery 文档:
如果有多个元素 分配了相同的 ID,查询使用 该 ID 将仅选择第一个 DOM 中的匹配元素。
这意味着您的代码正在尝试获取div
元素的value
,而不是select
的。尝试给div
一个不同的id
:
var newjobDropDown = $(document.createElement('div')).attr('id', 'jobDropDown_div' + counter);
newjobDropDown.after().html('<label><?php echo __(Job Vacancy); ?></label>' +
'<select id="jobDropDown' + counter +'"'+' onchange="validate()"'+' class="vacancyDrop"'+'>'+buildVacancyList()+'</select>'+
'<span onclick="removeDrop(event)"'+'class="removeText"'+ 'id="removeButton'+counter+'">'+remove+'</span>'+'<br class="clear" />');
newjobDropDown.appendTo('#TextBoxesGroup');
相关文章:
- 如何在从多选下拉列表中选择选项值时动态生成文本框
- 无法使用PHP动态设置下拉列表中的值
- 如何根据对具有多行的先前列表的选择来动态加载下拉列表
- 基于所选下拉列表值创建动态复选框
- 无法使用国家/地区选择中的状态动态填充下拉列表
- AngularJS:使用ng-show/hide动态维护下拉列表的3种状态(InProgress、Success、Err
- webforms:在javascript中动态添加下拉列表选项
- HtmlService表单-动态下拉列表
- 动态下拉列表选项在添加多列后未填充
- 使用 JavaScript 创建动态下拉列表
- 引导下拉列表动态 ajax 列表项
- 动态更改的下拉列表不会刷新.(雾虫)
- 使用javascript中的append创建动态下拉列表
- 将下拉列表动态更改为文本字段opencart
- 通过下拉列表动态更新总数
- ASP:下拉列表动态更改
- 来自 JavaScript 问题的 ASP 下拉列表动态值
- 通过输入字段和下拉列表动态更新字段
- 使用下拉列表动态更改照片
- 从其他下拉列表动态填充html下拉列表