我有一个带有一个下拉框(X)和一个文本框(Y)的表单。在X下拉框中选择一个值(例如:x2)并在Y文本框中输入值时 我点击了SUBMIT按钮,下拉框中的值将重置为第一个值(x1)。当我点击刷新按钮时,我会注意到同样的行为。 但是文本框Y不是这种情况。任何人都可以帮我一个示例代码。或者请告诉我哪里出错了以及我需要改变什么。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>history plugin demo</title>
</head>
<body>
<?php
$x = ( !empty( $_REQUEST['X'] ) ? $_REQUEST['X'] : null );
$y = ( !empty( $_REQUEST['Y'] ) ? $_REQUEST['Y'] : null );
?>
Ajax load<BR>
<form id="myForm" action='fields.php' method='GET' rel="history">
X <BR>
<select name="X" value="<?=$x;?>">
<option value="x1">x1</option>
<option value="x2">x2</option>
</select><BR> <BR>
Y <BR>
<input type="text" name="Y" value="<?=$y;?>"> <BR> <BR>
<input id="sub" type="submit" value="Search" align="centre"/>
</form>
<!--other part of code!-->
</body>
</html>
答案 0 :(得分:2)
您还需要为应选择的selected
添加option
属性
<option value="x1" <?= ($x === 'x1' ? 'selected="selected"' : '')?> >x1</option>
<option value="x1" <?= ($x === 'x2' ? 'selected="selected"' : '')?> >x1</option>
答案 1 :(得分:0)
select
html元素没有值属性,而是在选项元素上设置selected属性:
<select name="X">
<option value="x1"<?= $_REQUEST["X"]=="x1"?" selected='selected'":"" ?>>x1</option>
<option value="x2"<?= $_REQUEST["X"]=="x2"?" selected='selected'":"" ?>>x2</option>