0

我有以下 javascript

        $(document).ready(function(){
            $.datepicker.setDefaults({
                changeMonth: true,
                changeYear: true,
                dateFormat : 'yy-mm-dd',
                inline : true,
            });
            var dateFields = ['non_fed_photo_id_exp_date', 'non_fed_id_exp_date', 'federal_photo_id_exp_date'];
            $.each(dateFields, function(field){
                $('#UserRegistration_user_'+field).datepicker({
                    yearRange: '<?php echo date('Y'); ?>:+30'
                });
            });
            $('#UserRegistration_user_dob').datepicker({
                defaultDate: '-20y',
                yearRange: '-100:-15'
            });
        });

UserRegistration_user_dob 元素被正确地分配了日期选择器,但数组中的字段不是。

我缺少什么/做错了什么有什么突出的吗?

4

1 回答 1

2

.each()的回调有两个参数,索引和值。您只使用索引。

试试这个:

$.each(dateFields, function (idx,field) {...

您的原始代码会产生如下选择器:

#UserRegistration_user_0 
#UserRegistration_user_1 
#UserRegistration_user_2 

我的小修改会产生:

#UserRegistration_user_non_fed_photo_id_exp_date 
#UserRegistration_user_non_fed_id_exp_date 
#UserRegistration_user_federal_photo_id_exp_date 
于 2013-03-25T20:47:41.940 回答