X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

> Проверка iquery текста
andreykashops
andreykashops
Topic Starter сообщение 2.5.2013, 15:07; Ответить: andreykashops
Сообщение #1


Приветствую!

Значит есть форма, которая всплывает при нажатии на кнопку.
После заполнения и отправки выдается результат ввиде текста.
Задумка, если текст, выведенный в блоке с классом wpcf7-response-output имеет текст: "Ваш запрос отправлен, мы свяжемся с Вами в ближайшее время" - закрыть форму через 3,5 сек.
Я в JS еще не мастер, но вот кое что набросал:
$(document).ready(function() {
    $('#wpsclicscr').click(function (e) {
        var as = $('.wpcf7-response-output').html();
        if( as = 'Ваш запрос отправлен, мы свяжемся с Вами в ближайшее время' ){
            setTimeout(function() {
                e.preventDefault();
                $('#mask, .window').hide();  
            }, 3500)
        }
    });
});


В скрипте проблема, что закрытие происходит в любом случае, то есть не работает проверка текста...

Сайт
Развернуть/Свернуть
http://scsistema.ru/

Кнопка "Заказать звонок"


--------------------
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
 
Открыть тему
Ответов (1 - 8)
devuser
devuser
сообщение 2.5.2013, 15:16; Ответить: devuser
Сообщение #2


Проверка равенства - двойное равно

if( as == 'Ваш запрос отправлен, мы свяжемся с Вами в ближайшее время' )


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andreykashops
andreykashops
Topic Starter сообщение 2.5.2013, 15:30; Ответить: andreykashops
Сообщение #3


devuser, проверка теперь работает, спасибо!

Но новая проблема, не успевает текст загрузится до его получения в переменную as...


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
devuser
devuser
сообщение 2.5.2013, 15:40; Ответить: devuser
Сообщение #4


http://scsistema.ru/wp-content/plugins/con...ipts.js?ver=3.4

Тут в самом конце есть
$.fn.wpcf7FillResponseOutput = function(message) {
        return this.each(function() {
            $(this).find('div.wpcf7-response-output').append(message).slideDown('fast');
        });
    };


Попробуйте
$.fn.wpcf7FillResponseOutput = function(message) {
        return this.each(function() {
            $(this).find('div.wpcf7-response-output').append(message).slideDown('fast');
            if (message == 'Ваш запрос отправлен, мы свяжемся с Вами в ближайшее время') {
                setTimeout(function() {
                    $('#mask, .window').hide();  
                }, 3500);
            }
        });
    };


Сообщение отредактировал devuser - 2.5.2013, 15:41


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andreykashops
andreykashops
Topic Starter сообщение 2.5.2013, 20:48; Ответить: andreykashops
Сообщение #5


devuser, данный скрипт не хочет работать sad.gif
Я пробовал без проверки текста, то есть вот так:
$.fn.wpcf7FillResponseOutput = function(message) {
        return this.each(function() {
            $(this).find('div.wpcf7-response-output').append(message).slideDown('fast');
                setTimeout(function() {
                    $('#mask, .window').hide();  
                }, 3500);
        });
    };

То есть без проверки на наличие текста - тоже не работает.

PS Может я не правильно держу логику, тогда поправьте меня...


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
devuser
devuser
сообщение 2.5.2013, 22:36; Ответить: devuser
Сообщение #6


Да, действительно, это я накосячил, сори. Не заметил return

Вот так попробуйте

$.fn.wpcf7FillResponseOutput = function(message) {
        setTimeout(function() {
            $('#mask, .window').hide();  
        }, 3500);
        return this.each(function() {
            $(this).find('div.wpcf7-response-output').append(message).slideDown('fast');
        });
};


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andreykashops
andreykashops
Topic Starter сообщение 2.5.2013, 23:41; Ответить: andreykashops
Сообщение #7


devuser, сейчас копался сам и понял о чем Вы, теперь все работает, спасибо! smile.gif
Прошлый код работает, просто я его не туда вставил ))

Сообщение отредактировал andreykashops - 2.5.2013, 23:42


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
devuser
devuser
сообщение 2.5.2013, 23:58; Ответить: devuser
Сообщение #8


Пожалуйста. Но ваш подход в корне неправильный. Я не стал вас переубеждать, но все же. Если вы измените текст сообщения - все отвалится ведь smile.gif

Насколько я понял, можно впихнуть этот код сюда

if (1 == data.mailSent)
    $(data.into).find('form').resetForm().clearForm();


Это 78я строка в том самом файле.
Чтобы получилась конструкция вида

if (1 == data.mailSent) {
    $(data.into).find('form').resetForm().clearForm();
    setTimeout(function() {
        $('#mask, .window').hide();  
    }, 3500);
}



И проверок никаких не надо, если я правильно определил место, куда нужно вставить.
Попробуйте, мой вам совет.

Сообщение отредактировал devuser - 2.5.2013, 23:59


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
andreykashops
andreykashops
Topic Starter сообщение 3.5.2013, 9:22; Ответить: andreykashops
Сообщение #9


devuser, если разница всего лишь в тексте - все нормально smile.gif
Сложность только в том, что нужно отличить сообщение о положительно результате от ошибочного, а сообщений там около десятка...

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.


--------------------
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Проверка позиций сайтов в поисковых системах с помощью Positon.ru
Мониторинг продвижения сайтов
183 Positon 179477 12.4.2024, 8:32
автор: Positon
Открытая тема (нет новых ответов) Перевод текста в речь нейросетями - сервис Zvukogram
13 Zvukogram 7194 19.2.2024, 18:16
автор: freon_mr777
Открытая тема (нет новых ответов) 📌 Рандомизация видео/аудио/фото/текста с минимальным участием - 𝓓𝓮𝓵𝓽𝓪𝓣𝓸𝓸𝓵𝓼
Мы предлагаем комплексное решение для рандомизации всех видов офера
2 leviathan 1377 29.1.2024, 21:29
автор: leviathan
Открытая тема (нет новых ответов) Нужен перевод текста с RU на UZ
0 REGNET 766 22.2.2023, 15:17
автор: REGNET
Открытая тема (нет новых ответов) Наполнение сайта Автотематики (написание текста с размещением)
Ищу человека для длительного сотрудничества
2 NYLesha 1832 1.8.2022, 23:22
автор: NYLesha


 



RSS Текстовая версия Сейчас: 20.4.2024, 7:00
Дизайн