Как сделать если в форму input#word вводят текст что бы блок div.tectrom появлялся а если поле пустое что бы скрывался. Сейчас есть такой код в данный момент когда поле пустое блок скрыт но если вводить в поле текст блок не появляется.... Код (Javascript): $(document).ready(function() { var string = $('#word').val(); if (string.length != 0) { $('.tectrom').css("display","block"); } else { $('.tectrom').css("display","none"); } });
https://api.jquery.com/change/ Есть ещё input, но с ним не все так гладко в старых браузерах: http://stackoverflow.com/questions/17384218/jquery-input-event
Спасибо ща работает как надо, только после ввода нужно убирать фокус и только тогда срабатывает скрипт например ввел текст убрал фокус появляется блок потом удалил текст убрал фокус и блок пропадает как можно сделать что бы не убирая фокус сразу как ввел текст появлялся блок ? Код (Javascript): $("#word" ).change(function () { var string = $('#word').val(); if (string.length != 0) { $('.tectrom').css("display","block"); } else { $('.tectrom').css("display","none"); } }).change();
@Khaybulla, присмотрись к другим обработчикам событий. присмотрись к input И я не понял зачем после фукнции обработкика .change() ?
В текстовом поле уже может быть какое-то значение при загрузке страницы/DOM. Вот ТС и вызывает событие... получается что-то типа Self-Invoking функции.
Код (Javascript): $("#word" ).on( 'keyup', function () { var string = $( this ).val(); if (string.length != 0) { $('.tectrom').css("display","block"); } else { $('.tectrom').css("display","none"); } });