Перейти к содержимому


Обязательное заполнение емэйла


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 38

#1 wedcard

wedcard

    Новичок

  • Пользователи
  • Pip
  • 5 сообщений

Отправлено 10 Октябрь 2010 - 21:23

Как сделать обязательное заполнение емэйла при заказе товара?

#2 support

support

    Активный участник

  • Модераторы
  • 3 686 сообщений
  • ГородМосква

Отправлено 11 Октябрь 2010 - 11:54

Просмотр сообщенияwedcard (10 Октябрь 2010 - 21:23) писал:

Как сделать обязательное заполнение емэйла при заказе товара?
Поправить шаблон магазина, добавить звездочку у этого поля, поставить класс required как у остальных полей, немного изменить javascript логику. Напишите пожалуйста, какой шаблон Вы используете, чтобы можно было объяснить как это исправить на примерах.

#3 wedcard

wedcard

    Новичок

  • Пользователи
  • Pip
  • 5 сообщений

Отправлено 11 Октябрь 2010 - 17:40

шаблон «Сияние»

#4 support

support

    Активный участник

  • Модераторы
  • 3 686 сообщений
  • ГородМосква

Отправлено 12 Октябрь 2010 - 23:12

Зайдите в редактор тем, откройте файл "Оформление заказа".
Найдите следующий код:
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

замените его на следующий:
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red">*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

Сохраните, и откройте файл main.js
в нём найдите код:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactEmail, #contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactEmail, #contactPassWord').removeClass('required');
	}
  });

и замените его на следующий:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactPassWord').removeClass('required');
	}
  });

Этого будет достаточно чтобы поле emailа стало обязательным для заполнения.

#5 velena168

velena168

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 1 643 сообщений
  • ГородСанкт- Петербург

Отправлено 21 Март 2011 - 22:11

Ура! Вы так понятно объяснили, что даже у меня все получилось за пару минут. Приятно с Вами работать.

#6 OMarra

OMarra

    Пользователь

  • Пользователи
  • PipPip
  • 25 сообщений

Отправлено 20 Июнь 2012 - 15:55

Просмотр сообщенияsupport (12 Октябрь 2010 - 23:12) писал:

Зайдите в редактор тем, откройте файл "Оформление заказа".
Найдите следующий код:
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

замените его на следующий:
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red">*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

Сохраните, и откройте файл main.js
в нём найдите код:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactEmail, #contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactEmail, #contactPassWord').removeClass('required');
	}
  });

и замените его на следующий:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactPassWord').removeClass('required');
	}
  });

Этого будет достаточно чтобы поле emailа стало обязательным для заполнения.

Здравствуйте! Подскажите, пожалуйста, где в шаблоне Сияние сейчас можно найти файл main.js? У меня виден только main.css, а в нем нет указанного Вами фрагмента.
Заранее спасибо!

#7 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 20 Июнь 2012 - 19:30

main.js находиться там же где и main.csstemplate в блоке Стили и скрипты

#8 corsettia

corsettia

    Новичок

  • Пользователи
  • Pip
  • 7 сообщений

Отправлено 06 Июль 2012 - 09:31

Просмотр сообщенияsupport (12 Октябрь 2010 - 23:12) писал:

Зайдите в редактор тем, откройте файл "Оформление заказа".
Найдите следующий код:
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

замените его на следующий:
<tr>
  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red">*</span></label></td>
  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

Сохраните, и откройте файл main.js
в нём найдите код:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactEmail, #contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactEmail, #contactPassWord').removeClass('required');
	}
  });

и замените его на следующий:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactPassWord').removeClass('required');
	}
  });

Этого будет достаточно чтобы поле emailа стало обязательным для заполнения.





А в теме Мокко как добавить поле с e-mail?

#9 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 06 Июль 2012 - 14:53

В стандартном шаблоне поле с email адресом есть, и изменяется аналогично выше сказанному. Для данного случая отличий особых в шаблоне нет.

#10 rjevsky

rjevsky

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 84 сообщений

Отправлено 20 Ноябрь 2012 - 10:15

А в шаблоне Пластик то же самое надо сделать, чтобы e-mail был обязательным?

#11 Koderhan

Koderhan

    Активный участник

  • Модератоpы
  • 6 227 сообщений

Отправлено 20 Ноябрь 2012 - 13:35

Для шаблона пластик почти все такие же изменения.
Чуть код другой.
Вот.

Просмотр сообщенияsupport (12 Октябрь 2010 - 23:12) писал:

Зайдите в редактор тем, откройте файл "Оформление заказа".
Найдите следующий код:
<tr>
  <td><label for="contactEmail">Электропочта:<span class="contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
  <td><input type="text" id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" class="required" /></td>
</tr>

замените его на следующий:
<tr>
 <td><label for="contactEmail">Электропочта:<span  class="contactRegisterNeedElement">*</span></label></td>
 <td><input type="text" id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" class="required" /></td>
</tr>

Сохраните, и откройте файл main.js
в нём найдите код:
  
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactEmail, #contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactEmail, #contactPassWord').removeClass('required');
	}
  });


и замените его на следующий:
  // При оформлении заказа дадим возможность зарегистрироваться пользователю
  $('#contactWantRegister').click(function(){
	if($(this).attr("checked")) {
	  $('.contactRegisterNeedElement').show();
	  $('#contactPassWord').addClass('required');
	} else {
	  $('.contactRegisterNeedElement').hide();
	  $('#contactPassWord').removeClass('required');
	}
  });

Этого будет достаточно чтобы поле emailа стало обязательным для заполнения.


#12 rjevsky

rjevsky

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 84 сообщений

Отправлено 20 Ноябрь 2012 - 15:15

Цитата

Этого будет достаточно чтобы поле emailа стало обязательным для заполнения
Извините, но в шаблоне Пластик не работает. Звездочка появилась, но я делаю пробный заказ, оставляю поле e-mail пустым, и меня пропускают на следующую страницу. Получилось, когда вставил строчку из другой темы:
<input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" />


#13 Flor@@

Flor@@

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 1 959 сообщений

Отправлено 20 Март 2013 - 01:19

сделала предложенные шаги наоборот, чтобы разрешить оформление без электронной почты, но не помогает.. помогите сделать заполнение емейла не обязательным.

#14 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 353 сообщений

Отправлено 20 Март 2013 - 05:57

Проверьте в вашем шаблоне "Оформление заказа" должен быть такой блок

<tr>
			  <td class="cell1"><label for="contactEmail">Электропочта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
			  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
			</tr>

если в нем есть класс required, то удалите данный класс.

#15 Flor@@

Flor@@

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 1 959 сообщений

Отправлено 20 Март 2013 - 14:06

у меня вот такой код:

<td class="cell1"><label for="contactEmail">Электронная почта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>

#16 mikola

mikola

    Good soo good

  • Модератоpы
  • 1 550 сообщений
  • Городгород Нижний Новгород

Отправлено 20 Март 2013 - 18:06

Просмотр сообщенияotdyh-i-son.ru (20 Март 2013 - 14:06) писал:

у меня вот такой код:

<td class="cell1"><label for="contactEmail">Электронная почта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
</tr>
заменяем код на
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
			  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>


#17 Flor@@

Flor@@

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 1 959 сообщений

Отправлено 21 Март 2013 - 07:07

Вы уверены? не помогло, ни вот так:

<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>

ни вот так:

<td class="cell1"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>

ни вот так:

<td class="cell1"><label for="contactEmail">Электронная почта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>

#18 miyako

miyako

    Активный участник

  • Модератоpы
  • 5 372 сообщений

Отправлено 21 Март 2013 - 07:24

Просмотр сообщенияotdyh-i-son.ru (21 Март 2013 - 07:07) писал:

Вы уверены? не помогло, ни вот так:

<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>

ни вот так:

<td class="cell1"><input id="contactEmail" name="form[contact][email]" class="email required" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>

ни вот так:

<td class="cell1"><label for="contactEmail">Электронная почта:<span class="red contactRegisterNeedElement" {% IFNOT ORDER_FORM_CONTACT_WANT_REGISTER %}style="display:none;"{% ENDIF %}>*</span></label></td>
<td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>

Попробуйте так:
<td class="cell1"><label for="contactEmail">Электропочта:<span class="red" </label></td>
			  <td class="cell2"><input id="contactEmail" name="form[contact][email]" class="email" value="{ORDER_FORM_CONTACT_EMAIL}" /></td>


#19 Flor@@

Flor@@

    Активный участник

  • Пользователи
  • PipPipPipPip
  • 1 959 сообщений

Отправлено 21 Март 2013 - 17:24

не помогло.

#20 mikola

mikola

    Good soo good

  • Модератоpы
  • 1 550 сообщений
  • Городгород Нижний Новгород

Отправлено 21 Март 2013 - 18:25

Просмотр сообщенияotdyh-i-son.ru (21 Март 2013 - 17:24) писал:

не помогло.
добрый вечер..
Хорошо давайте ещё раз проверим..
Пришлите ваш  код шаблона "Оформление заказа"




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных