如何找出 jQuery 时间选择器的 id 和 s 值?



我正在使用时间选择器来设置一系列事件的开始和结束时间,因此每个时间选择器看起来像这样,其中$dateid是唯一变量。

<input type='text' class='editable' id='StartTime_$dateid' name='StartTime_$dateid' value='".$row['StartTime']."' readonly />

当时间选择器被更改时,我会触发这样的事件

$("ul [id^='StartTime_']").timepicker({ 
timeFormat: 'h:mm p',
interval: 15,
minTime: '5:00am',
maxTime: '10:00pm',
startTime: '5:00',
dynamic: false,
dropdown: true,
scrollbar: true,
change: function( selected ) {
saveTime(id, selected);
}
});

这将形成所需的保存功能

function saveTime(id,selected){
console.log('saveTime fired id '+ id + ' v '+ selected); 
}

我遇到的问题是获取 ID 和值,当用户更改值时我需要自动保存。

我要么是"未定义的",要么是像这样相当长的时间表示

保存时间 id 未定义 v 周日 12 月 31 日 1899 05:15:00 GMT-0500 (东部标准时间(

此处的值应为凌晨 5:15,这是用户在下拉列表中看到的内容。如果我换出 id 并为 this.id 选择,并且 this.value 也在控制台日志中返回未定义

在时间选择器文档中没有看到太多来解释如何解决这个问题

您可以使用 change 函数中的$(this)变量来获取元素,然后您可以使用$(this).id获取 id。 希望这有帮助