我有以下代码,我修改了它来进行连接,然后为以后的表单元素构建一个数组:
$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]的选项,以显示原始中每个选项的FirstName和Lastname:
<option>'.$user[0].'</option>
这成功地创造了这个:
<select id="user_id"><option value="104">104- John Doe</option>
在我的javascript中,我发现这段文字我认为习惯于在表单中使用所选内容:
uid = $("#user_id option:selected").text();
现在突然间这不起作用了?我假设这是因为原来的'。$ user [0]。没有在选项中寻找值=“'。$ user [0]。'”。我该如何修改?
答案 0 :(得分:3)
将您的代码更改为:
uid = $("#user_id").val();
这将返回所选选项的值。
这也适用于您选择的旧方式。如果某个选项没有value
属性,则默认使用该文本。