【发布时间】:2015-09-24 12:06:20
【问题描述】:
所以我在cordova 类型的移动应用程序中使用input type="date"。出于某种原因,如果输入类型是日期,placeholder 将不会出现。因此,当单击日历时,会出现一个类似的空按钮。因此,我正在尝试遵循input type="text" 具有placeholder“下一个行动日期”的 hack。而onfocus 我将类型更改为date。和onblur 我改回type="text" 并再次创建placeholder。所以这个过程部分解决了我正在尝试解决的问题。哪个让那个白色按钮的东西消失。但是在我当前的代码中,我必须遵循两个步骤
- 首先是点击占位符,然后 onfocus 将被触发并使白色的东西出现
- 第二个是我必须点击白色的东西才能显示日历
我不希望出现第二步。这是我的代码
<ElementsBasket name='nextActionDate'
data={this.props.newLead.get('actions').get('nextActionDate')}>
<div className="form-group">
<input type="text" className="form-control" onFocus={this._onFocus} onBlur={this._onBlur} placeholder="Next Action Date"
value={this.props.newLead.get('actions').get('nextActionDate')}
onChange={onFieldChanged.bind(this, 'actions.nextActionDate')}
/>
</div>
</ElementsBasket>
_onFocus: function(e){
e.currentTarget.type = "date";
},
_onBlur:function(e){
e.currentTarget.type="text"
e.currentTarget.placeholder = "Next Action Date";
},
我也试过onclick,也分了两步。我已经关注了这个链接
Not showing placeholder for input type="date" field
PS:白色的东西是一个没有文字的按钮,点击后会给出一个日历
【问题讨论】:
-
您是否只想在用户调用他必须输入的站点时填写日期字段?告诉我们更多关于你想要实现的功能或事物的信息。我不明白,你到底有什么。也许提供屏幕截图或类似的东西。
-
用户点击输入按钮,初始状态为type="text",有一个占位符="Next Action Date",点击后onFocus会被触发出现一个没有文字的白色按钮。所以用户必须再次单击它才能获得日历。有什么我可以澄清的吗?
-
不,我不明白你为什么要这么复杂地解决你的问题?!你希望按钮是什么?用户可以在其中选择日期的日历?您想要该按钮的占位符或类似的东西吗?我要拉小提琴
-
请参考更新后的问题!
-
jsfiddle.net/L94e5kee/2 看看这个小提琴,用你的手机检查一下。那对你有用吗?
标签: javascript cordova reactjs