我有一个POST到itselft的表单,以便用户可以执行您在购物车中找到的内容.
例如,增加数量,选择邮资类型.
我的问题是我的表单选择元素称为"邮资",只要表单重新加载自己,它会忘记选中的内容.
我所有的其他字段都记住了它们的值:
<input type="text" name="postcode" value="<?php echo $_POST['postcode']; ?> " />
Run Code Online (Sandbox Code Playgroud)
如何使用$ _POST值自动选择用户完成的选择字段中的选项?
我试过这个:
<select name="postage" selected="<?php echo $_POST['postage']; ?>" >
Run Code Online (Sandbox Code Playgroud)
还有这个
<select name="postage" value="<?php echo $_POST['postage']; ?>" >
Run Code Online (Sandbox Code Playgroud)
谢谢
你几乎得到了它.当且仅当值等于元素的值时,才需要在元素selected="selected"
上设置属性(技术上需要的确切形式取决于您的HTML文档类型,但这是一个安全的默认值).所以:<option>
$postage
<select name="postage">
<option value="foo"
<?php if ($_POST['postage'] == "foo") echo 'selected="selected" '; ?>
>
</select>
Run Code Online (Sandbox Code Playgroud)
请注意,这违反了DRY原则,因为您现在有两次出现的字符串"foo"
,因此它是重构的主要候选者.一种好的方法是将值/文本对保留在一个数组中,然后迭代它foreach
以生成<option>
标记.
归档时间: |
|
查看次数: |
15842 次 |
最近记录: |