![](/img/trans.png)
[英]How to assign the option value from a dropdown to select id of another dropdown?
[英]How to assign an ID to a dynamic dropdown select?
每当使用第一个选择下拉菜单时,我都想分配一个会话ID(将被隐藏)。 会话ID是“天”之后的数字300、301等。
当用户从“首选”下拉列表中选择某项内容时,应将“ 300”值分配给“ sessionid”下拉列表,并同时更改“天”下拉列表的值(已生效)
如何正确实施?
请参见下面的代码:
<select id="preferred" class="preferred" name="preferred">
<option value="">- Select -</option>
<option value="Mountain Dew">Mountain Dew</option>
<option value="Seven Up">Seven Up</option>
</select>
<select id="day" class="day" name="day">
<option value=""></option>
</select>
<select id="sessionid" class="sessionid" name="sessionid">
<option value=""></option>
</select>
$(function() {
var selectValues = {
"Mountain Dew": {
"Monday": "300"
},
"Seven Up": {
"Tuesday": "301"
}
};
var $preferred = $('select.preferred');
var $day = $('select.day');
var $sessionid = $('select.sessionid');
$preferred.change(function() {
$day.empty().append(function() {
var output = '';
$.each(selectValues[$preferred.val()], function(key, value) {
output += '<option value="' + key + '">' + key + '</option>';
});
return output;
});
}).change();
});
您可以使用Element.id = 'id'
在javascript中设置ID。
https://developer.mozilla.org/zh-CN/docs/Web/API/Element.id
在您的代码中,在您想要分配ID的位置上可能是这样的:
$sessionid[0].id = $day.val();
但是请注意,ID必须以字母开头,数字即使有效也通常是不正确的做法。
将您需要的值放在隐藏字段中可能比此解决方案更可取。
如果要设置会话ID下拉列表的值,请尝试此操作。 在您的小提琴中设置输出变量之后,请包括此内容。
$sessionid.empty()
.append($("<option></option>")
.attr("value",value)
.text(value));
这是小提琴的链接 。
但是,正如其他人已经建议的那样,为什么不使用隐藏的文本字段来存储值呢?
要将值存储在隐藏字段中,
<input type="hidden" id="hdnSessionId" />
并将其添加到脚本中。
$('#hdnSessionId').val(value);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.