Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

Цей урок покаже Вам як довгу веб-форму перетворити в майстер з '' покроковим '' введенням даних.

Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery
Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

При створенні веб-форми, яку б мету ви не переслідували, необхідно розділити всі поля форми за тематичними блоками. Кожен блок повинен чітко описувати що входять в нього поля форми. Хоча в інтернеті на сьогоднішній день існує безліч візуально несхожих один на одного прикладів, ось як це має виглядати в коді.

Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

Таким чином, кожна група полів являє собою підзадачу більшої завдання, представленої в веб-формі. Отже, кожна подзадача може бути представлена ​​як один тематичний крок, який містить в собі опис, поля для введення даних і стандартну для майстер-форм систему навігації. Всю завдання можна здійснити в кілька простих кроків.

Код повинен виглядати наступним чином:

Тепер давайте розберемо наступний код. Щоб встановити скільки буде кроків, Вам необхідно вибрати (виділити) все тематичні блоки і встановити розмір створюваної рамки. Потім, ми інтегруємо створену рамку (повертаємо всі блоки) обрамляемо кожен тематичний блок тегами div і прив'язуємо пункт, який буде містити кнопки '' back '' і '' next ''.

Тепер перейдемо до більш веселою частини. Якщо це - перший тематичний блок, ми створюємо тільки кнопку "next" і робимо цей крок видимим за замовчуванням. Для останнього кроку, створимо тільки кнопку "back". У всіх інших випадках будуть потрібні обидві кнопки навігації. Метод створення кнопок навігації буде описаний пізніше.

Перейдемо до опису створення кнопок і процесу навігації.

2. Створюємо кнопки Next і Back і додаємо взаємодія

Створити кнопки навігації не так складно як здається. Кожна кнопка замість стандартної написи Next може мати своє унікальне ім'я (напр. Далі, або Попередня) і буде прив'язана до панелей, створеним на попередньому етапі. Щоб можна було переключатися між '' кроками '', необхідно додати теги посилань кожній кнопці. Вони будуть працювати в такий спосіб:

• Натиснута кнопка Back повертає користувача з відкритою сторінки кроку на попередню, яка буде відзначена як поточна в selectStep () методі.
• Активована кнопка Next переміщує користувача з відкритою сторінки на наступну, яка буде відзначена як поточна в selectStep () методі.

Згадана мною функція selectStep () знімає CSS клас "current" з усіх блоків і приписує його тільки поточного:

Майстер практично готовий до використання, але це ще не все. Тепер давайте додамо опису кожного кроку над формою, щоб користувач міг легко орієнтуватися.

Це набагато простіше, ніж може здатися на перший погляд. На самому початку нашого коду нам необхідно додати невпорядкований список, який стане контейнером для цієї інформації. В добавок ми сховаємо кнопку '' Прийняти '', так як вона нам потрібна тільки на останній сторінці.

Нам також потрібно розширити кожну функцію () function і додати інформацію про кожен крок для всіх тегів fieldset створених рамок (wrapped set). Кожен крок нумерується, починаючи з 1. Під номером кроку додамо опис за допомогою елемента .

Давайте ще дещо налаштуємо. Так як кнопка '' Прийняти '' повинна бути видна лише на останній сторінці, ми будемо приховувати її, кожен раз коли користувач натискає на кнопку Next. І як тільки користувач дійде до останнього кроку, вона стане видимою.

Плагін для простоти використання

Було б сумно, якби не було плагіна, за допомогою якого можна було б все описане вище ввести одним рядком. Цей плагін називається FormToWizard. Я думаю, що тепер всім зрозуміло що це :). Щоб встановити плагін, підключаємо посилання на script-файл і посилаємося на нього в елементі

.

Якщо ви хочете приховати кнопку '' Прийняти '' (або заповнювач місце для різних кнопок), ви можете додати параметр sumbitButton, вказавши назву елемента, який потрібно зробити невидимим.

Маленький розмір (легковаге) і сумісність з браузерами

Плагін важить лише 2,3KB, а в стислому вигляді ще менше. Він підтримується всіма популярними браузерами: FireFox, Google Chrome, Safari, Opera, Internet Explorer 8, 7 і 6. Останній - другорядний, сам був украй здивований, що плагін працює і в ньому :).

Дякуємо за увагу. Успіхів!

5 останніх уроків рубрики "jQuery"

Сьогодні ми б хотіли вам розповісти про бібліотеку TypeIt - безкоштовному jQuery плагін. З її допомогою можна імітувати набір тексту. Якщо все налаштувати правильно, то можна домогтися дуже реалістичного ефекту.

  • jQuery плагін для створення тимчасової шкали.

  • jQuery плагін для створення діаграми Ганта.

  • Приклад того як здійснити завантаження файлу через PHP і jQuery ajax.

    Прикольно і корисно

  • Щиро Дякую! Давно шукав рішення для устновщіка, і ось воно)

  • форма клас, дуже сподобалася. Є таке питання як місце стандартної sabmit поставити своє зображення

  • Урок, класний. У тексті: "Потім, ми ітегріруем створену рамку.", Пропущена буква "Н"

  • МаксімШкурупій
  • Хо Хо - супер. ТОлько ось ще б клікнув на Step 1 і відразу перемістився в 1 крок, незважаючи на те що находішся в третьому

  • Доброго ранку. Перевірив в ie-6 - не працює коректно. Не змінює форму при натисканні на "Натисніть тут, щоб змінити форму", ie-6 видає помилку error on the page 84, unspecified error. Перевірив а ie-7 - Е не работат коректно. Так само не змінює форму, але назва помилки відрізняється: "Line 28, об'єкт не підтримує це властивість чи метод". У ie-8 форма змінилася.

  • 2veins Підтверджую. Скачав тут же прогу "Весь ИЕ в одному".

  • Дякуємо. Відмінна штука. Підкажіть будь ласка, як зробити так, щоб покрокова форма завантажувалася відразу, без натискання на кнопку зміни форми? Заздалегідь дякую.

  • трохи не зрозуміло, де в коді зустрічається var steps = $ ( "# SignupForm fieldset"); просто треба змінити SignupForm на іншу назву, а в коді не знаходжу де. при зміні на HTML сторінці відповідно відрубується скрипт.

  • Питання відпадає, # забув поставити, спасибі за якісний переклад статті

  • Вибачте за дурне питання, але про чм урок. )) Що таке веб-форма, це звичайна форма для заповнення даних або щось інше?

  • Вибачте за дурне питання, але про що урок. )) Це звичайна форма для заповнення даних або щось інше?

  • Jotunn, дивіться приклад

  • Як зробити щоб скрипт почав відразу працювати, без натисканні на кнопку?

  • Питання такого плану. як здійснити множинний вибір в цій формі. тобто наприклад. в першому кроці передбачаємо вибір, залежно від вибору відкриється крок 2 або, наприклад, відразу 3. Дякую.

    Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

    За рахунок отримання інформації відразу по двох каналах (зір і слух) ефективність навчання значно перевершує навчання по книгах. А домашні завдання і онлайн-тести дозволять вам постійно думати на мові, що вивчається і відразу перевіряти свої знання!

    Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

    Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

    Якщо ви давно хочете як слід вивчити HTML, то у мене для Вас є чудова новина!

    Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

    Якщо ви вже вивчили HTML і хочете рухатися далі, то наступним кроком буде вивчення технології CSS.

    Перетворіть будь-яку веб-форму в яскравий покроковий майстер за допомогою jquery

    Якщо ви хочете розібратися з поняттями домену і хостингу, навчитися створювати бази даних, закачувати файли сайту на сервер по FTP, створювати піддомени, налаштовувати поштові скриньки для свого сайту і стежити за його відвідуваністю, то цей курс створений спеціально для вас!