【问题标题】:Adding date to multiple fields via datepicker通过日期选择器将日期添加到多个字段
【发布时间】:2010-05-08 13:18:29
【问题描述】:

我在drupal 中有一个带有基于jquery 的日期模块的表单。有多个启用日期选择器的字段。我想在设置该字段时将所有这些字段的值(它们都具有类 .date-popup-init)设置为第一个字段(#edit-field,“起始”日期)的值。 到目前为止我的代码:

<script type="text/javascript">
        var DatePicked = function() {
                var firstdate = $("#edit-field");
                var updater = firstdate.datepicker("getDate");
                $(".date-popup-init").each(function(){
                  $(this).datepicker("setDate", updater);
                  });
        }
        $(function() {
                $("#edit-field").datepicker({
                        onSelect: DatePicked
                });
        });
</script>

这似乎是随机的;它将某些字段的日期设置为#edit-field 的值,每次看似不同的字段。

此外,表单通过 ajax 添加了更多启用日期选择器的字段。有什么方法可以确保所有这些新字段在加载时也获取#edit-field 的值?

免责声明:昨晚是我第一次尝试任何类型的 javascript。我现在有一个基本的想法。以上是通过无数谷歌示例拼凑而成的。

【问题讨论】:

    标签: jquery drupal datepicker


    【解决方案1】:

    你在正确的轨道上。试试这个:

    var DatePicked = function(dateText) {
        $(".date-popup-init").val(dateText);
    }
    $('document').ready(function ()
    {
        $(function() {
            $("#edit-field").datepicker({
                onSelect: DatePicked
            });
        });
    });
    

    【讨论】:

    • 谢谢。实际上,我刚刚意识到我的代码存在问题,与您的代码相同:单击#edit-field 时,仅当我在#edit-field 中选择日期之前单击它们时,才会将其他字段设置为预期值。就像我必须先“激活”它们。顺便说一句,关于通过 ajax 添加的新字段的任何词都包含#edit-fields 的现有值?
    • @Andy:这并没有发生在我身上。我不必关注任何文本框,它就可以工作。当我选择一个日期时,所有字段都会自动获取该日期。
    • 一直在阅读。注意到所有字段都已通过 AHAH 进程添加到页面中。我怀疑这可能是问题的一部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    • 2020-12-17
    • 1970-01-01
    • 2014-06-29
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    相关资源
    最近更新 更多