0

我修改了以下代码以进行连接,然后为以后的表单元素构建一个数组:

$usersitems = '';
$db_connection = mysql_connect($dbhost,$dbuser,$dbpassword);
if($db_connection && mysql_select_db($dbname,$db_connection)){
    $usersquery = 'SELECT DISTINCT tablea.uid, tableb.FirstName, tableb.LastName FROM tablea, tableb WHERE tablea.uid = tableb.EmpNo ORDER BY tablea.uid ASC';
    $users = mysql_query($usersquery,$db_connection);
    if($users){
        while ($user = mysql_fetch_array($users, MYSQL_NUM)) {
            $usersitems .= '<option value="'.$user[0].'">'.$user[0].'- '.$user[1].' '.$user[2].'</option>';  
        }
        mysql_free_result($users);
    }
    mysql_close($db_connection);
} 

我还更新了选项以包括 [1] 和 [2] 以显示原始选项中每个选项的名字和姓氏:

<option>'.$user[0].'</option>

这成功地创建了这个:

<select id="user_id"><option value="104">104- John Doe</option>

在我的 javascript 中,我发现这行文本我认为用于使用表单中的选定内容:

uid = $("#user_id option:selected").text();

现在突然这不起作用?我假设这是因为原来的 '.$user[0].' 不是在选项中寻找 value="'.$user[0].'" 。我该如何修改?

4

1 回答 1

3

将您的代码更改为:

uid = $("#user_id").val();

这将返回所选选项的值。

这也适用于您执行选项的旧方式。如果选项没有value属性,则默认使用文本。

于 2013-02-27T19:55:55.903 回答