我正在Chrome
本地使用WAMP
,PHP
版本5.我使用输入日期,显示日历。事实上,我在用户的数据编辑页面中得到了一些变量。我担心的是收集了所有数据。但是对于日期而言,他没有在数据库中显示记录(由var_dump
确认),而是显示占位符Day / Month / Year
我感兴趣的是,当且仅当我的字段为空时,我想要这个占位符。
以下是该字段的语法:
<input name="datedepart" type="date" value="<?php echo date('d/m/Y',strtotime($data["congestart"])) ?>"/>
有没有办法呢?
亲爱的,我非常尊重。
答案 0 :(得分:17)
是的,将日期格式更改为ISO可能就足够了,例如2012-08-22:
<input name="datedepart" type="date"
value="<?php echo date('Y-m-d',strtotime($data["congestart"])) ?>"/>
如果您的服务器需要其他格式,则必须使用Javascript进行转换(ISO是HTML5规范中使用的标准,因此无论Chrome如何显示,输入字段的值始终为ISO)。 / p>
更新,澄清:
日期字段只能包含有效日期。当您尝试将其设置为某些随机垃圾时,该值将变为空。当值为空时 - Chrome会显示占位符。 HTML5中日期的唯一有效格式是ISO:2012-03-04。试着看看:
<input value='2004-02-12' type='date'>
答案 1 :(得分:1)
使用
placeholder="<?php echo date('d/m/Y',strtotime($data["congestart"])) ?>"
而不是把它放在价值中。
如果这不能解决问题,那么再解释一下你想做什么?
答案 2 :(得分:0)
这非常适用于 fdreger :
<input name="datedepart" type="date" value="<?php echo date('Y-m- d',strtotime($data["congestart"])) ?>"/>
我需要同样的事情。
答案 3 :(得分:0)
我知道它的旧线程,但我认为这对某人有用
尝试使用min和max然后这将选择您提供的值。
像
<input type="date" min="2014-09-08" max="2018-09-08" value="2015-02-24" >
答案 4 :(得分:0)
它为我工作
<input class="form-control calendar" name="datedepart" required="" type="date" id="datedepart" aria-required="true" value="<?php echo date('Y-m-d',strtotime($data["congestart"])) ?>">
答案 5 :(得分:0)
对我有用的是删除从php返回的值的引号,所以在你的代码的情况下它会尝试这个:
<input name="datedepart" type="date" value=<?php echo date('d/m/Y',strtotime($data["congestart"])) ?>/>
答案 6 :(得分:0)
这个对我有用
def divide(dividend, divisor):
"""
:type dividend: int
:type divisor: int
:rtype: int
"""
sign = [1,-1][(dividend < 0) != (divisor < 0)]
dividend, divisor = abs(dividend), abs(divisor)
res = 0
i = 0
tmp_divisor = divisor
while dividend >= divisor:
old_dividend, old_res = dividend, res
dividend = dividend - tmp_divisor
tmp_divisor <<= 1
res += (1 << i)
i+=1
if dividend < 0:
dividend = old_dividend
res = old_res
tmp_divisor >>= 2
i -= 2
if sign == -1:
res = -res
if res < -2**31 or res > 2**31 -1:
return 2**31 - 1
return res