我有一个选择框,显示人员列表的名称和姓氏。但我想为每个人添加一个id并使其不可见。 EX。如果我们 John Smith ID 001 我想写 John Smith:001 ,但应该将其视为 John Smith < / strong>即可。重要的是,身份证不仅是看不见的,而且也不会占用任何空间。
这是我的代码:
mousePressed()
但是,这不起作用,因为ID仍然可见
答案 0 :(得分:1)
您可以使用option的值来包含带分隔符的name和id。阅读时你可以再分开。
<option value="$person[$i]['name']:$person[$i]['id']">
答案 1 :(得分:1)
尝试使用组合名称和ID设置值(继续我的评论):
<?php
$result = pg_query(connect(), "SELECT id, name, surname FROM person ORDER BY name ASC, surname ASC");
$person = pg_fetch_all($result); ?>
<select name="person">
<?php
for($i=0; $i<sizeof($person); $i++) {
$name = $person[$i]['name'].' '.$person[$i]['surname']; ?>
<option value="<?php echo $name.":".$person[$i]['id']; ?>"><?php echo $name; ?></option>
<?php
} ?>
</select>
为您提供以下内容:
Array
(
[person] => doug johnson:1
)
答案 2 :(得分:1)
你必须保持价值不同,标题不同。 所以,代码应该是: 让我简单一点$ name是这个人的全名,而$ id是他的身份。
<option value="<?php echo $name.":".$id?>"><?php echo $name;?></option>
看起来工作可以做得更清洁一点。但无论如何,重点是您可以使用value属性向服务器发送与用户看到的不同的值。
BTW,请记住,用户可以通过查看浏览器中的源代码来查看该值。 (如果这不是你想要的那么你将不得不在php代码中更改值部分,否则这段代码很好用)