2010-10-13 67 views
9

我有一个带日期选择器的窗体。日期选择器有一个面向用户的d/m/Y格式的日期选择器输入和一个隐藏的altField,用于与数据库一起使用。jQuery UI datepicker - 清除主字段时清除altField

如果用户清除输入字段中的文本,它也不会清除altField。

我正在使用下面的JS来解决这个问题。有没有更正确的方法来做到这一点,还是完全可以接受?

$("#datePicker").change(function(){ 
    if ($(this).val().length < 1){ 
     $("#dateAltField").val(''); 
    } 
}); 
+1

在那里对这个问题充满了错误?因为我仍然看到它没有被修复.. – tXK 2012-01-18 16:00:15

+0

确实......这个上涨的地方在哪里? – Potatoswatter 2012-05-08 07:18:43

回答

13

你有什么工作得很好,是一种有效的方法,或者短一点:

$("#datePicker").change(function(){ 
    if (!$(this).val()) $("#dateAltField").val(''); 
}); 
1

根据这一bug ticket这是不是一个错误,这是一个特点。

我用这个作为解决办法:

var $input = $('#myInput'); 
$input.dateinput(); 

// This is the main part: 
$input.on('change', function(){ 
    if (!$input.val()) $input.data('datepicker').settings['altField'].val(''); 
});