javascript - 下拉/组合框的已选项目应反射(reflect)为单击标签时的选定项目

标签 javascript jquery html combobox

我在我的网站中使用标签作为输入元素的属性,这将帮助盲人用户。我有组合框/下拉 我的代码输入日期(月/日)格式。目前如果只有一个下拉菜单,例如选择国家,然后点击标签, 已选择的国家反射(reflect)为已选择,没关系。我使用了这段 Jquery 代码:

$(function () {
    $('label').click(function () {
        var id = $(this).attr('for');
        $('#' + id).select();
    });
});  

但是在日期格式的情况下,因为在用于“ExpiryDate”的父“标签”下有子“标签”。所以在这种情况下 我上面写的 Jquery 不工作。 Jquery 适用于单下拉列表和 Teaxt 框。但我想选择第一个 child ,即月份已经选择的月份应该是 选择。请协助我,以便我可以实现它。我想处理当用户点击 Label 然后 TextBox、Single Dropdown 和 Combobox/Multiple 相关下拉菜单的已经输入/选择的项目应该 显示为选中。 我的 HTML 代码在这里:

<div class="editor-label">
                        <label for="ExpiryDate">*Expiration Date</label>
                    </div>

                    <div class="editor-field">
                        <label class="accessibleText" for="ExpirationMonth">
                        <label for="ExpiryDate">*Expiration Date</label>
                        </label>
                        <select id="ExpirationMonth" name="ExpirationMonth" tabindex="0"><option value="">Month</option>
<option selected="selected" value="1">Jan</option>
<option value="2">Feb</option>
<option value="3">Mar</option>
<option value="4">Apr</option>
<option value="5">May</option>
<option value="6">Jun</option>
<option value="7">Jul</option>
<option value="8">Aug</option>
<option value="9">Sep</option>
<option value="10">Oct</option>
<option value="11">Nov</option>
<option value="12">Dec</option>
</select>

                          <label class="accessibleText" for="ExpirationDay">
                        <label for="ExpiryDate">*Expiration Date</label>
                        </label>
                        <select id="ExpirationDay" name="ExpirationDay" tabindex="0"><option value="">Day</option>
<option selected="selected" value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>

</select>
</div>

我只想选择第一个 child 已经选择的项目显示为选中。

最佳答案

如果您将标签 for 更改为点相关的选择属性,如下所示,当您单击标签时,它将选择月份和日期。

<label for="ExpirationMonth">*Expiration Date</label>
<select id="ExpirationMonth" name="ExpirationMonth" tabindex="0">

关于javascript - 下拉/组合框的已选项目应反射(reflect)为单击标签时的选定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31203636/

相关文章:

Javascript 对象类型

javascript - 如何等待/检查元素是否存在

javascript - 来自单个元素的 Jquery off 事件

javascript - WooCommerce:停止滚动到结帐页面上的错误消息

JavaScript:在 new Option() 之后添加额外属性

javascript - 同步链接 Promise

javascript - 以编程方式更改 Bootstrap 弹出窗口颜色

c# - 选项卡索引处理 - ASP.NET MVC 表单控件

基于 HTML 表单的 Javascript 变量和 If 函数

html - 输入字段无法在 w3.css 中显示文本