禁用输入日期但检索值

时间:2014-07-30 15:56:14

标签: javascript php html

我想禁用输入日期,以便用户可以编辑输入中的当前值,但如果我禁用输入,则无法检索该值。

<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但是用户必须使用滑块锁定选择

2 个答案:

答案 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 />