Это потому, что Keypress
событие запускается перед добавлением нового персонажа. Вместо этого используйте событие keyup, которое отлично подойдет в вашей ситуации.
$(document).ready(function() {
$("#dSuggest").keyup(function() {
var dInput = $('input:text[name=dSuggest]').val();
console.log(dInput);
$(".dDimension:contains('" + dInput + "')").css("display","block");
});
});
Я хочу добавить к этому, если у вас много текстовых полей и вы должны сделать то же самое с их событием keyup, вы можете просто дать им общий класс css (например, commoncss) и применить событие keyup, подобное этому.
$(document).ready(function() {
$(".commoncss").keyup(function() {
//your code
});
});
это значительно сократит ваш код, поскольку вам не нужно применять событие keyup по идентификатору для каждого текстового поля.