slo_nik
@slo_nik

Как вызвать функцию после завершения работы другой функции?

Добрый день.
Есть функция подсчёта вводимых символов в текстовую область.
Необходимо сделать вторую функцию, которая проверяет, что вводится в textarea, и если это адрес сайта, но подсчёт символов не вести.
Я попытался написать такую функцию, вроде что-то получилось.
Но проблема в том, что я не могу сообразить, как вызвать функцию подсчёта символов, когда функция проверки ввода завершит свою работу(вернёт false или null).

Вот что получилось:
// Функция проверки на наличие адреса сайта в textarea
     
    function changeAddress(myObject){
    	var address;
        $(myObject).bind('input propertykeypress', function(){
        	address = $(this).val()
            var pattern = /^([https:\/\/]*?)[-?\w\/.=&;]*?$/;

            var result = new RegExp(pattern);
            //console.log(result);
            
            if(result.exec(address)){
            	return true
        	   //console.log(address);
            }
           // else{
            	return false
              // console.log('no address');
            //}
        })
    }

    // Функция подсчета количества символов - START
    var amount = 0;
    function limitChars(myObject, typeChars){
        $(myObject).keyup(function(){
            var count = $(this).val().trim().length; // кол-во уже введенных символов
            amount = 30;
            var sum_count = Math.round(count*120/1000);
            if (sum_count > amount) {
                amount = sum_count;
            }

            $(typeChars).text('Символов: ' + count + '\u00A0\u00A0\u00A0\u00A0\u00A0\u00A0\u00A0Стоимость проверки: ' + amount + ' рублей');
        });
    }
    // Функция подсчета количества символов - END
    
    $(document).ready(function(){
        var myObject = '#limitInput'; // объект, у которого считаем символы
        var typeChars = '#typeChars'; // куда выводим кол-во введенных символов
        limitChars(myObject, typeChars);

        var count = $(myObject).val().trim().length; // кол-во уже введенных символов
        
        amount = 30;
        var sum_count = Math.round(count*120/1000);
        if (sum_count > amount) {
            amount = sum_count;
        }

        $(typeChars).text('Символов: ' + count + '\u00A0\u00A0\u00A0\u00A0\u00A0\u00A0\u00A0Стоимость проверки: ' + amount + ' рублей');

    });


Получается, что когда функция changeAddress вернёт false/null, необходимо заставить работать функцию limitChars.
Подскажите, как это сделать?
  • Вопрос задан
  • 345 просмотров
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы