我很熟悉编码 - 所以我希望我的问题看起来不太愚蠢。我正在尝试为下拉列表创建一个数组。
目前我正在使用这个
$(function(){
$('.test').editable({
type: 'select',
value: "keine",
source: [
{value: 'DD', text: 'DD'},
{value: 'HEAL', text: 'HEAL'},
{value: 'TANK', text: 'TANK'},
{value: 'keine', text: 'keine'}
]
});
});
这非常适合创建手动下拉列表。
但是我正在寻找一种动态解决方案,使用它我可以在我的 sql 数据库中插入特定表中的值(使用与上面示例类似的语法 - 也许使用 .$fetch['role'].
?
期待收到一些建议。
假设你有一个带有角色的表角色,并且你使用的是PHP的MySqli方法,那么你的PHP代码可能看起来像这样:
<?php
// ...
// ... assuming $mysqli is your connection object:
// ...
$result = $mysqli->query("SELECT role FROM roles ORDER BY role")
or die($mysqli->error());
while ($row = $result->fetch_array()) {
$source[] = (object) array("value" => $row[0], "text" => $row[0]);
}
?>
<script>
$(function(){
$('.test').editable({
type: 'select',
value: "keine",
source: <?=json_encode($source)?>
});
});
</script>
因此,这段代码遍历数据库的结果,并构建一个PHP数组,该数组具有JavaScript中所需的结构。
一旦这个变量$source被填充,它就会以JSON格式写入JavaScript,该格式(当PHP生成它时,所有非ASCII都转义)与JavaScript兼容。