MooTools DatePicker 库:如果表单已提交,则“value”为空

MooTools DatePicker library: 'value' is empty if the form is submitted

本文关键字:value 为空 提交 DatePicker 如果 表单 MooTools      更新时间:2023-09-26

我正在尝试对日期字段使用日期选择器库,但是当提交表单时,输入字段的"值"为空。
我从这里复制了代码:http://www.monkeyphysics.com/mootools/script/2/datepicker

<script>           
        window.addEvent('load', function() {
        new DatePicker('.demo_vista', { pickerClass: 'datepicker_vista' });
        new DatePicker('.demo_dashboard', { pickerClass: 'datepicker_dashboard' });
        new DatePicker('.demo_jqui', { pickerClass: 'datepicker_jqui', positionOffset: { x: 0, y: 5 } });
        new DatePicker('.demo', { positionOffset: { x: 0, y: 5 }});
         });
</script>
    <li>*DATE : <input name='date' type='text' value='' class='date demo_vista'  /></li>

这是我的网站: http://iconceptsolutions.com.my/projects/grandevest/online-product-registration/

此库的要点是,您写入 HTML 文档的字段与浏览器显示的字段不同。

当您构建DatePicker对象时,它会获取与其第一个参数匹配的input fields,并且对于每个参数,它会构建另一个input field,该实际上获取用户选择的日期并由浏览器显示。

因此,要获取您要查找的值,您必须获取对原始input field的引用,并使用它调用 MooTools 函数getNext() ,以便您可以检索所需的值:

因此,对于此 HTML:

<input name='date' type='text' value='' class='date demo' id='dateField' />

您可以使用以下代码获取所需的值:

$('dateField').getNext().get('value')

例如,当用户单击提交按钮时,可以调用 Wich。如果您需要处理表单的PHP脚本中的值,那么使用上面的MooTools行,您可以设置原始input field的值,然后将其发送到PHP。


更新

我已经设置了这个 JsFiddle 用于测试目的。

不确定,但我想知道你的

value=''

<li>*DATE : <input name='date' type='text' value='' class='date demo_vista' /></li>

是否覆盖日历?

如果将其删除会怎样?

试试这个:

<input id="datepicker" name='date' type='text'/>

javascript 函数 new datepicker 正在创建 'datepicker' 作为 ID 为 datepicker 的 DOM 对象。 您需要标记中的 ID 来指定这一点。 您根本不需要其中的值,您可以在标头的日期选择器脚本本身中设置默认值。 这也是您选择主题的地方,而不是在您的 HTML 标签中。