0

datepickerfield で生年月日を検証する必要がありますが、試してみてください。

私はこのコードを持っています:

日付ピッカーフィールド

{
    xtype: 'datepickerfield',
    id: 'dob',
    name: 'dates',
    useClearIcon: true,
    renderData: {
        placeHolder : 'dd/mm/YYYY'
    },
    label: '*Born of birthday',
    picker: {
        doneButton: 'Select',
        cancelButton: 'Cancel',
        slotOrder: ['day', 'month', 'year'],
        yearFrom: 1925,
        yearTo: 2012,
        hideOnMaskTap: true,
    }
}

私としての検証

if(Ext.getCmp('dob').getValue().format('d/m/Y') < new Date().format('d/m/Y')) {
    Ext.Msg.alert('Adult')
} else {
    Ext.Msg.alert('Minor')
}

私を助けてください。

4

1 に答える 1

1

datepickerfieldこのリスナーをオブジェクトに追加します。

listeners:{
  change:function(picker, birthDate){
    var today = new Date(),
        age = today.getFullYear() - birthDate.getFullYear(),
        m = today.getMonth() - birthDate.getMonth();
    if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {
        age--;
    }
    if(age >= 18){
      console.log('Adult');
    }
    else{
      console.log('Minor');
    }
  }
}

お役に立てれば

于 2012-06-05T17:07:38.423 に答える