[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Не откликается .change
Страницы: 1, 2
zheev
Ребят, вот код, не откликается на изменение в input классом url. Кнопка не делается активной((

$(".url").change(function(){
if($(".url").val()!=' '){
$(".tran_but").removeAttr('disabled');

}else{
$(".tran_but").attr('disabled','disable');

}
}
);
sergeiss
Во-первых, лучше вот так начало сделать:

// вместо твоего
$(".url").change(function(){

// вот так:
$(".url").bind( 'change', function(){


Во-вторых, внутри функции ты должен обращаться this, а не по классу. Потому что, если таких объектов несколько, то при обращении по классу будет взят первых из них, а не тот, где изменения.

$(".url").bind( 'change', function(){
if($(this).val()!=' '){
$(".tran_but").removeAttr('disabled');

}else{
$(".tran_but").attr('disabled','disable');

}
}
);


И еще учти, что change срабатывает не сразу при изменениях, а при потере фокуса объектом. Если ты хочешь отслеживать изменения во время ввода, то тебе нужно следить за событием 'keypress', например. Или 'keyup'.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
zheev
Не работает((
sergeiss
Цитата (zheev @ 4.10.2015 - 11:19)
Не работает((

Что именно "не работает"? Ты отладкой займись smile.gif Например, поставь перед if точку останова и посмотри (1) приходит ли вообще туда управление и (2) если да, то с какими величинами.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
zheev
Цитата (sergeiss @ 4.10.2015 - 11:42)
Что именно "не работает"? Ты отладкой займись  Например, поставь перед if точку останова и посмотри (1) приходит ли вообще туда управление и (2) если да, то с какими величинами.


$(".url").bind('change', function(){
.if($(this).val()!=''){
$(".tran_but").removeAttr('disabled');
}else{
$(".tran_but").attr('disabled','disable');
}
}
);


так что ли?)
sergeiss
Ты почти скопировал измененный мной код (в одном из предыдущих ответов), но зачем-то поставил точку перед if - с ней будет ошибка и нифига работать не будет.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
zheev
Цитата (sergeiss @ 4.10.2015 - 11:50)
Ты почти скопировал измененный мной код (в одном из предыдущих ответов), но зачем-то поставил точку перед if - с ней будет ошибка и нифига работать не будет.

Сорри ступил. Поставил точку останова и ни каких признаков
sergeiss
Цитата (zheev @ 4.10.2015 - 11:53)
Поставил точку останова

Не понял... Ты как ее поставил-то? Это вот эта точка перед if, что ли??? user posted image

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
zheev
Цитата (sergeiss @ 4.10.2015 - 11:55)
Цитата (zheev @ 4.10.2015 - 11:53)
Поставил точку останова

Не понял... Ты как ее поставил-то? Это вот эта точке перед if, что ли???

нет. та точка опечатка
sergeiss
Тогда покажи HTML, к которому относится этот код. И еще - у тебя HTML динамически создается или изначально готов?
Ну и код JS, каков он сейчас.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
zheev
Цитата (sergeiss @ 4.10.2015 - 11:58)
Тогда покажи HTML, к которому относится этот код. И еще - у тебя HTML динамически создается или изначально готов?
Ну и код JS, каков он сейчас.

вот html
<td>URL</td><td><input type="text" name="url_pages" value=" " class="url"> <input disabled="" class="tran_but" type="button" value="Транслит"></td></tr>



$(".url").bind('change', function(){
debugger;
if($(this).val()!=''){
$(".tran_but").removeAttr('disabled');
}else{
$(".tran_but").attr('disabled','disable');
}
debugger;
});
sergeiss
ОК....

1. У тебя на странице сколько кнопок с классом tran_but?
2. Как именно ты проверяешь, что не сработало?
3. Если кнопка одна (п.1), то попробуй заменить событие 'change' на событие 'keypress'.
4. И что за слово debugger в коде? Как вообще ты ставишь "точку останова"?

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Invis1ble
Цитата (sergeiss @ 4.10.2015 - 13:00)
И что за слово debugger в коде? Как вообще ты ставишь "точку останова"?
sergeiss
Цитата (Invis1ble @ 4.10.2015 - 13:02)
laugh.gif laugh.gif

Ахренеть, дайте два... (с) Но вообще, я как-то привык руками ставить эти точки smile.gif Чтобы можно было динамически это всё менять. "Ручная" точка останова гарантированно сработает или не сработает, в зависимости от моего желания.

PS. И как я вижу, чтобы debugger сработал, надо сначала выполнить определенные действия. Иначе нифига не остановится.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
zheev
Цитата (sergeiss @ 4.10.2015 - 13:00)
1. У тебя на странице сколько кнопок с классом tran_but?
2. Как именно ты проверяешь, что не сработало?
3. Если кнопка одна (п.1), то попробуй заменить событие 'change' на событие 'keypress'.
4. И что за слово debugger в коде? Как вообще ты ставишь "точку останова"?


1. одна
2. что то ввожу в input с классом url а кнопка не становится активной
3. пробовал
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.