显示多个日历或选择的值显示不正确
好的,我正在使用 jQuery Mobile 框架 并添加 实验日期选择器 但我遇到两个结果。按照页面上的说明进行操作,这就是我到目前为止所拥有的。
代码工作#1:
$(document).ready(function() {
$('.hasDatepicker').hide();
$('#date-of-birth').each(function() {
$(this).focus(function() {
$(this).next().show('fast');
});
$(this).blur(function() {
$(this).next().hide('fast');
});
});
});
现在这显示了一个日历(如我所愿),但在日期选择时,日期保持不变(这是今天的日期),而不是所选的日期。
代码工作#2:
$(function() {
$('.hasDatepicker').hide();
$('#date-of-birth').focus(function() {
$('.hasDatepicker').show('fast');
});
$('#date-of-birth').blur(function() {
$('.hasDatepicker').hide('fast');
});
});
现在,这显示了多个日历(确切地说是 5 个)堆叠在一起,而且如果我选择日期,它也会按预期工作。但我只想显示一个日历。
我想结合这两个代码工作来获得所需的结果,但似乎没有任何效果。
这是 HTML
<div data-role="fieldcontain">
<label for="date-of-birth">Date of Birth</label>
<input type="date" name="date-of-birth" id="date-of-birth" />
</div>
type="date"
是您调用日期选择器的方式
有任何提示吗?
其他可能会有所启发的堆栈链接
更新:
好吧,这可能是问题所在,但仍然没有找到解决方案。
我使用 jQueryMobile 的 多页面布局 选项,对于每个页面,它都会创建一个额外的日期选择器,但它会显示它们彼此堆叠,并且功能无法正常工作
Ok I'm using the jQuery Mobile Framework and adding the Experimental Date Picker but I encounter two results. Following the instructions on the page, this is what I have so far.
Code Efforts #1:
$(document).ready(function() {
$('.hasDatepicker').hide();
$('#date-of-birth').each(function() {
$(this).focus(function() {
$(this).next().show('fast');
});
$(this).blur(function() {
$(this).next().hide('fast');
});
});
});
Now this shows the one calendar (as I would like) but on date selection the date stays the same (it's todays date) and not the date selected.
Code Efforts #2:
$(function() {
$('.hasDatepicker').hide();
$('#date-of-birth').focus(function() {
$('.hasDatepicker').show('fast');
});
$('#date-of-birth').blur(function() {
$('.hasDatepicker').hide('fast');
});
});
Now this show multiple calendars (5 to be exact) stacked on top of one another and also if I select the date it works as expected. But I only want one calendar to display.
I would like to combine the two code efforts to get the desired results but nothing really seems to be working.
Here is the HTML
<div data-role="fieldcontain">
<label for="date-of-birth">Date of Birth</label>
<input type="date" name="date-of-birth" id="date-of-birth" />
</div>
The type="date"
is how you call the date picker
Any tips?
Other Stack Links that might shed some light
UPDATE:
Well this might be the issue but still haven't found a solution.
I using the Multi-page layout option for jQueryMobile, For each page it creates an additional date-picker but it displays them stack on each other and the functionality doesn't work correctly
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我成功了。我问了这个问题: jQuery Mobile ->覆盖 jQuery UI 日期选择器 ->布局损坏
这是实验性的,但它可以工作。您不应该使用它
您应该为一个站点上的每个日期选择器添加一个唯一的
id
,然后编写:$('#uniqueId').show('fast');
我将 ID 添加到日期选择器的 JavaScript 文件中。
I got it working. I asked this question: jQuery Mobile -> Override jQuery UI Datepicker -> Layout broken
It is experimental, but it works. You should not use this
You should add for each datepicker on one site a unique
id
and then write:$('#uniqueId').show('fast');
I add the IDs inside of the JavaScript file of the datepicker.