我想禁用输入日期,以便用户可以编辑输入中的当前值,但如果我禁用输入,则无法检索该值。
<form action="test123123.php" method="post">
<input type="date" name="datap" value="<?php echo date('Y-m-d'); ?>" disabled>
<input type="submit" name="ok">
</form>
<?php
if(isset($_POST['ok'])){
echo $_POST['datap'];
}
此代码返回无法找到'datap'的错误,我明白它会出现此错误,因为无法看到输入。如何禁用输入但能够检索值。上面的代码只是一个例子。我对一般的应用程序不感兴趣。
更新
我在同一天尝试使用min和max但是用户必须使用滑块锁定选择
答案 0 :(得分:1)
将已知的好价值存储在隐藏字段中:
<form action="test123123.php" method="post">
<input type="date" name="datap-input" value="<?php echo date('Y-m-d'); ?>" disabled>
<input type="hidden" name="datap" value="<?php echo date('Y-m-d'); ?>">
<input type="submit" name="ok">
</form>
正如其他人所建议的那样,readonly可能适合您,但残疾人和只读输入的行为和外观是不同的。如果它适合您的用例,Readonly会更容易。
答案 1 :(得分:0)
Disabled元素值不会随表单提交一起传递,因此请使用readonly
代替:
<input type="date" name="datap" value="<?php echo date('Y-m-d'); ?>" readonly />