PHP中select元素的默认值

时间:2015-02-06 11:03:41

标签: php html mysql

我在XAMPP服务器上使用PHP,MySQL创建了一个联系人数据库。 该页面打开时显示“联系人”表格,其中包含“添加”,“编辑”和“删除按钮。 添加&删除工作正常。 “编辑”按钮打开一个模式窗体,其中包含所有常用输入,这些输入使用...

填充表格行中的值
$("#dlgeditContactName").val(ContactName);
$("#dlgeditEmail").val(Email);

还有一个选择元素(联系人类型),使用PHP ...

填充
<?php

$conn  =   new mysqli('xxxx', 'xxxx', 'xxxx', 'xxxx')  or die ('Cannot connect to db');

    $result  =   $conn->query("select contacttypeid, contacttype from tblcontacttypes");

    echo "<select id =  'dlgeditcontacttypeid'>";

    while ($row  =   $result->fetch_assoc()) {
        unset($id, $name);
        $id  =   $row['contacttypeid'];
        $name  =   $row['contacttype']; 
        echo '<option value =  "'.$id.'">'.$name.'</option>';
    }
    echo "</select>";

?>

contacttypeid&amp; contacttype是int和string eg。 1,个人 2,家庭 等

此选择框按预期运行,用户可以在编辑会话期间选择一个选项。

我根本不知道根据表格行中的值放置此选择框中的默认值的最佳方法。 填充其他输入元素很简单,但使用以下选项不起作用...

$("#dlgeditcontacttypeid").val(ContactTypeID);

我想我必须像......一样使用'选中'

<option value="audi" selected>Audi</option>

(来自W3Schools),但不确定这是否最佳,甚至不知道如何做。

我想到了带有ID的表单上的隐藏div但没有运气获得PHP的价值

我尝试在PHP中添加一些Java ...

echo "<script> function(); </script>";

但它看起来“凌乱”,我不相信这是最好的方法

这个问题必须有一个标准方法 - 任何人都必须处理这个问题吗?

1 个答案:

答案 0 :(得分:0)

这就是你要找的东西:

$ContactTypeID = 2; //Considering you have default value with you.

while ($row  =   $result->fetch_assoc()) {
    unset($id, $name);
    $id  =   $row['contacttypeid'];
    $name  =   $row['contacttype'];

    if($id == $ContactTypeID) //If default value and id in loop are same
    echo '<option value =  "'.$id.'" selected="selected">'.$name.'</option>';
    else
    echo '<option value =  "'.$id.'">'.$name.'</option>';
}