JSFiddle - React, Tailwind, and code Playground
by imsky
HTML
<input type="text">
JavaScript
$(function(){
$("input").bind("keydown", function(e){
if(!$(this).data("history")){
$(this).data("history", []);
}
if(!$(this).data("index")){
$(this).data("index",0);
}
var history = $(this).data("history");
var index = $(this).data("index");
switch(e.which){
case 13:
history.push($(this).val());
$(this).data("index", history.length-1)
$(this).val("");
break;
case 40:
$(this).data("index", Math.min(history.length-1, ++index));
$(this).val(history[$(this).data("index")]);
break;
case 38:
$(this).val(history[$(this).data("index")]);
$(this).data("index", Math.max(0, --index));
break;
}
});
});