我注意到当我输入数据时,输入字段会显示提示。
如果我选择它,它将成为该字段的值,但JavaScript不会看到它,除非我按回车或单击。
我已尝试change
,mousedown
,click
,' keyup','输入'事件。
JavaScript无法理解用户选择的提示。
如何使用JavaScript从输入字段中读取用户选择的提示值?
答案 0 :(得分:0)
答案是input
事件。感谢NewToJS。
最初它是YYYY-MM-DD用户输入的日历类型。日历正在工作,所有事件都在工作,除非用户点击提示我无法用javascript读取输入 - 因此如果用户选择提示,我无法在日历上显示正确的日期。 Nevertheles,提示日期以表格形式提交并写入数据库。
简化代码:
function calFnc( date ) { /* calnedar code */ }
calFnc.prototype.handleEvent = = function(event) {
console.log(' tagName = '+event.target.tagName+', Id = '+event.target.id+' , class ='+$(event.target).attr('class')+', type='+event.type);
if( event.type === 'input' || event.type === 'keyup' ) { /* deal with hint or user input */ }
};
var cal1 = new calFnc(); // if date is motted the constructor creates current
document.getElementById('calendar1').addEventListener("click", cal1, false);
document.getElementById( 'calendar1' ).addEventListener("keyup", cal1, false);
document.getElementById( 'calendar1' ).addEventListener("change", cal1, false);
document.getElementById( 'calendar1' ).addEventListener("mousedown", cal1, false);
document.getElementById( 'calendar1' ).addEventListener("mousedown", cal1, false);
document.getElementById( 'calendar1' ).addEventListener("input", cal1, false);