我遇到了一个小问题。当我更改下拉列表时,页面将被重新加载。有人能帮我吗。此代码用于检索userid,根据userid从下拉列表中获取所有应用程序id并将其填充到下拉列表中。如果我在下拉列表中选择值,我将存储所选值这是我的密码。
<?php
$selected = " ";
function get_options($select) {
global $wpdb;
$user_ID = get_current_user_id();
echo $user_ID;
$sql = $wpdb->get_col("select Application_ID from wp3_cteTest where $user_ID = userid");
echo $sql;
//print_r($keysql);
$options = "";
while (list($k, $v) = each($sql)) {
if ($select == $v) {
$options.='<option value="' . $v . '" selected>' . $v . '</option>';
} else {
$options.='<option value="' . $v . '">' . $v . '</option>';
}
}
return $options;
}
if (isset($_POST['applications'])) {
$selected = $_POST['applications'];
echo $selected;
}
?>
<html>
<head>
</head>
<body>
<form action="" method="POST">
<?php $default_state = 'please Select your id'; ?>
<select name="applications" onchange=this.form.submit()>
<option value=' ' ><?php echo $default_state ?></option>
<?php echo get_options($selected) ?>
</select>
</form>
</body>
</html>
我尝试删除表单,如果我删除表单下拉不起作用,我将无法获得选定的值。那怎么了??提前感谢!
您的select标记中有onchange=this.form.submit()
,因此当您更改所选选项时,javascript将提交表单。
只要改变。。。
<select name="applications" onchange=this.form.submit()>
到…
<select name="applications">
因此,如果您只需要所选id而不提交表单,则替换此行:
<select name="applications" onchange=this.form.submit()>
这个:
<select name="applications" onchange="getval(this)">
并添加小脚本:
<script type="text/javascript">
function getval(sel) {
alert(sel.value);
}
</script>