gpt4 book ai didi

javascript - 如何在动态列表中设置初始值?

转载 作者:行者123 更新时间:2023-11-30 15:34:58 27 4
gpt4 key购买 nike

我有一个函数可以从后端数据库获取现有记录的详细信息(通过 ajax)。检索记录后,jsp 页面会填充详细信息,包括动态填充列表中的项目值。

当我需要将值设置到下拉列表中作为初始值时,我的问题就来了。该列表始​​终默认为第一项,即使在我明确设置值之后也是如此。

我已经尝试将整个列表(并且不使用任何过滤器)硬编码到页面中,这允许设置初始值起作用,因此我可以安全地假设问题在于我如何填充过滤列表。我似乎找不到可行的解决方案(向用户显示整个列表不是一种选择)。

function getRecord() {

$.ajax({
url: "<s:url action='getRecords'/>",
type: "POST",
data: jQuery.param(searchObj),
success: function(data, textStatus, jqXHR) {
var _data = $.parseJSON(data);
var record = _data["record"];

$("#recordID").val(record["ID"]);
$("#country").val(record["country"]);

/* populate the country specific list */
populateList(record["country"]);

/* set the selected item in the list */
$("#countryItems").val(record["countryItem"]); // doesn't work
$("#countryItems").prop("selected", record["country"]); // doesn't work either
$("#countryItems option [value='" + record["countryItem"] + "']").prop("selected", "selected"); // still doesn't work

// do other stuff here
}
}

function populateList(country) {

$.ajax({
url: "<s:url action='populateList'/>",
type: "POST",
data: {
country: country
},
success: function(data, textStatus, jqXHR) {
var _data = $.parseJSON(data);
var listMap = _data["listMap"]; // filtered list

// remove existing list
$('#countryItems option').remove();

// append new list
$.map(listMap, function(k, v) {
$('#countryItems').append(new Option(k, v));
});
}
});
}

最佳答案

您可以尝试选择该选项,然后将所选属性设置为真值。

$('option item selector').prop('selected', true);

关于javascript - 如何在动态列表中设置初始值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41691499/

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