gpt4 book ai didi

javascript - 如何更改名称,而不是动态填充的选择列表的值?

转载 作者:行者123 更新时间:2023-11-30 16:01:59 25 4
gpt4 key购买 nike

我有一个选择列表,其中动态填充了来 self 的数据库的数据。但我不想让用户看到真实的列名,所以我在我的数据库中创建了一个额外的列,称为 column_alias。我想要的是在下拉列表中显示 column_alias 名称,但保留列名称的实际值。

这就是我现在用真实列名填充选择列表的方式:

function loadTables() {
$.getJSON("dropdown_code/get_tables.php", success = function(data)
{
console.log('inside callback');
var optionsTables = "";
for(var i = 0; i < data.length; i++)
{
optionsTables += "<option value='" + data[i] + "'>" + data[i] + "</option>";
}

$("#slctTable").append(optionsTables);
$("#slctTable").change();
});

}

这是从我的数据库中获取数据的代码:

<?PHP

require "opendb.php";

$query = "select table_name
from db_tables
order by table_name";

$data = pg_query($conn, $query);

$table_names = array();

while ($row = pg_fetch_array($data))
{
array_push($table_names, $row["table_name"]);
}

echo json_encode($table_names);

require "closedb.php";
?>

更新

这是我的数据库表的样子: enter image description here

所以我希望 table_alias 在我的选择列表中可见,但我希望值是 table_name 以便它可以与我的数据库交互。

最佳答案

首先,您还需要从数据库中获取别名。将您的服务器端代码更改为以下内容。

<?PHP

require "opendb.php";

$query = "select table_name,table_alias
from db_tables
order by table_name";

$data = pg_query($conn, $query);
$table_names = array();

while ($row = pg_fetch_array($data))
{
array_push($table_names, $row);
}
echo json_encode($table_names);
require "closedb.php";
?>

然后在您的客户端代码中简单地输出 table_alias 作为选项名称和 table_name 作为选项值。

function loadTables() {
$.getJSON("dropdown_code/get_tables.php", success = function(data)
{
console.log('inside callback');
var optionsTables = "";
for(var i = 0; i < data.length; i++)
{
optionsTables += "<option value='" + data[i]['table_name'] + "'>" + data[i]['table_alias'] + "</option>";
}

$("#slctTable").append(optionsTables);
$("#slctTable").change();
});
}

关于javascript - 如何更改名称,而不是动态填充的选择列表的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37589316/

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