gpt4 book ai didi

javascript - 如何使用 jQuery 将选定值设置为多个 Select 输入?

转载 作者:行者123 更新时间:2023-12-01 01:52:54 25 4
gpt4 key购买 nike

我有 2 个选择输入,并用一系列年份填充它们。之后,我想为每个 Select 设置 currentYear 的选定值。我有这段代码,但仅适用于第一个选择我不明白为什么。

jQuery 1.4.3 一切正常,1.4.2 失败:_(

我正在尝试此操作,但没有成功:-(只有第一个选择值确定。可能是版本中的问题?IE6、asp.net 2.0、jquery 1.4.2。例如,“$(sinceComboSelector).val( currentYear);"不起作用,我必须执行 "$('#cmbAnyDesde option[value=' + currentYear + ']').attr('selected', 'selected');":-(

更新代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Tests.aspx.cs" Inherits="Tests" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="../JAVASCRIPT/jquery-1.4.2.min.js" type="text/javascript"></script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
loadYears();
});
var loadYears = function() {
var currentYear = new Date().getFullYear(),
years = [],
firstYear = currentYear - 7,
lastYear = currentYear + 3,
sinceComboSelector = "#cmbAnyDesde",
toComboSelector = "#cmbAnyHasta",
i;

for (i = firstYear; i <= lastYear; i++) {
years.push(i);
}

$(sinceComboSelector).find('option').remove();

$(toComboSelector).find('option').remove();

$.each(years, function(key, value) {
$(sinceComboSelector)
.append($("<option></option>")
.attr("value", value)
.text(value));

$(toComboSelector)
.append($("<option></option>")
.attr("value", value)
.text(value)); ;
});

// $(sinceComboSelector).val(currentYear);
// $(toComboSelector).val(currentYear);
$('#cmbAnyDesde option[value=' + currentYear + ']').attr('selected', 'selected');
$('#cmbAnyHasta option[value=' + currentYear + ']').attr('selected', 'selected');
};
</script>
<form id="form1" runat="server">
<div>
<select id="cmbAnyDesde" style="width:70px"></select>
<select id="cmbAnyHasta" style="width:70px"></select>
</div>
</form>
</body>
</html>

最佳答案

我在这里使用上面的代码进行了测试,并且有效:

$(document).ready(function (){

loadYears();

});

var loadYears = function () {
var currentYear = new Date().getFullYear(),
years = [],
firstYear = currentYear - 7,
lastYear = currentYear + 3,
sinceComboSelector = "#cmbAnyDesde",
toComboSelector = "#cmbAnyHasta",
i;

for (i = firstYear; i <= lastYear; i++){
years.push(i);
}

$(sinceComboSelector).find('option').remove();

$(toComboSelector).find('option').remove();

$.each(years, function(key, value) {
$(sinceComboSelector)
.append($("<option></option>")
.attr("value", value)
.text(value));

$(toComboSelector)
.append($("<option></option>")
.attr("value", value)
.text(value)); ;
});

$(sinceComboSelector).val(currentYear);
$(toComboSelector).val(currentYear);
};

关于javascript - 如何使用 jQuery 将选定值设置为多个 Select 输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4023188/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com