Jump to content

Автозаполнение полей в корзине с помощью dadata.ru


Recommended Posts

Всем привет! Пытался сделать автоподсказки в корзине. Открыл cart.tpl добавил все по инструкции, но скрипт не работает. Непонятно почему - помогите=)

Инструкция по подключению подсказок DaData.ru к Simpla CMS

Внизу файла cart.tpl добавляем:

 {literal}
 <link href="https://cdn.jsdelivr.net/npm/suggestions-jquery@latest/dist/css/suggestions.min.css" rel="stylesheet" />
 <script src="https://cdn.jsdelivr.net/npm/suggestions-jquery@latest/dist/js/jquery.suggestions.min.js"></script>
 <script>
     $(".cart_form input[name='name']").suggestions({
         token: "ВАШ API-КЛЮЧ",
         type: "NAME",
         params: {
             parts: ["NAME", "SURNAME"]
         }
     });
     $(".cart_form input[name='address']").suggestions({
         token: "ВАШ API-КЛЮЧ",
         type: "ADDRESS"
     });
 </script>
 {/literal}
 
Вместо «ВАШ API-КЛЮЧ» пишем свой ключ (получить можно на https://dadata.ru/suggestions, это бесплатно).

 

Link to post
Share on other sites
{* Сервис подсказок для полей форм от dadata.ru / Рекомендуем зарегистрироваться там и получить свой token. *}
<link href="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/css/suggestions.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/js/jquery.suggestions.min.js"></script>
<script type="text/javascript">
	$("input[name='name']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: ".... вставьте свой ....",
		type: "NAME",
		params: {
			 parts: ["SURNAME", "NAME", "PATRONYMIC"]
		}
	});
	$("input[name='address']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: ".... вставьте свой ....",
		type: "ADDRESS"
	});
	$("input[name='email']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: ".... вставьте свой ....",
		type: "EMAIL",
		onSelect: function(suggestion) { console.log(suggestion); }
	});
</script>

index.tpl --> вставить перед </body> закрывающимся, в конце страницы.

у полей input в форме должен быть соответствующий type="" / проверить

Link to post
Share on other sites
2 часа назад, ST_RU сказал:

{* Сервис подсказок для полей форм от dadata.ru / Рекомендуем зарегистрироваться там и получить свой token. *}
<link href="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/css/suggestions.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/js/jquery.suggestions.min.js"></script>
<script type="text/javascript">
	$("input[name='name']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: ".... вставьте свой ....",
		type: "NAME",
		params: {
			 parts: ["SURNAME", "NAME", "PATRONYMIC"]
		}
	});
	$("input[name='address']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: ".... вставьте свой ....",
		type: "ADDRESS"
	});
	$("input[name='email']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: ".... вставьте свой ....",
		type: "EMAIL",
		onSelect: function(suggestion) { console.log(suggestion); }
	});
</script>

index.tpl --> вставить перед </body> закрывающимся, в конце страницы.

у полей input в форме должен быть соответствующий type="" / проверить

не работает) 

Link to post
Share on other sites

Без ссылки - это гадание на кофейной гуще...

Оно может не работать по ТЫСЯЧЕ РАЗНЫХ причин

Первым делом - посмотрите ошибки джаваскрипта в консоли

Link to post
Share on other sites
59 минут назад, Kosjak76 сказал:

Без ссылки - это гадание на кофейной гуще...

Оно может не работать по ТЫСЯЧЕ РАЗНЫХ причин

Первым делом - посмотрите ошибки джаваскрипта в консоли

Uncaught TypeError: $(...).suggestions is not a function
    at cart:899

Link to post
Share on other sites
1 минуту назад, ST_RU сказал:

как бы с рабочего шаблона своего взял. http://base-market.demo-wsite.ru/ 

внизу страницы код, перед закрытием страницы. работает.

 

http://base-market.demo-wsite.ru/cart положил товар в корзину попробовал - не работает)

Link to post
Share on other sites
2 минуты назад, ST_RU сказал:

Код ошибки, это устарел API ключ. надо обновить

Все же не одно поле у вас в корзине не работает с подсказкой

Link to post
Share on other sites
21 минуту назад, hooch1 сказал:

у меня ключ в норме, свежий.

 

24 минуты назад, alexivchenko сказал:

Все же не одно поле у вас в корзине не работает с подсказкой

 

Ещё раз. Проблема была в том,, что ключ устарел на демо. поставил новый сейчас. всё работает. проверяйте. http://base-market.demo-wsite.ru/cart

И RTFM !!! всё же написано, как подключать ;) Есть подсказки по полям email, name, adress во всех вроде формах подхватывает. И здесь например http://base-market.demo-wsite.ru/user/register

44512be27a5c9497f1111ce897b55e9d.png

Link to post
Share on other sites
6 минут назад, ST_RU сказал:

 

 

Ещё раз. Проблема была в том,, что ключ устарел на демо. поставил новый сейчас. всё работает. проверяйте. http://base-market.demo-wsite.ru/cart

И RTFM !!! всё же написано, как подключать ;)

с вашим токеном работает нормально, а я уже раз 15 обновил свой ключ и все 403 ошибку ловлю 

Link to post
Share on other sites
3 минуты назад, alexivchenko сказал:

с вашим токеном работает нормально, а я уже раз 15 обновил свой ключ и все 403 ошибку ловлю 

там есть получить новый ключ. они публичные и на них лимит. смотреть нужно ваш случай. смысл гадать? я показал пример. вроде работает.

Link to post
Share on other sites
1 минуту назад, ST_RU сказал:

там есть получить новый ключ. они публичные и на них лимит. смотреть нужно ваш случай. смысл гадать? я показал пример. вроде работает.

Я вам об этом и пишу, что получил уже 15 разных ключей в личном кабинете и всё равно ошибка.

demo.simpla2x.ru

Link to post
Share on other sites
3 минуты назад, alexivchenko сказал:

Я вам об этом и пишу, что получил уже 15 разных ключей в личном кабинете и всё равно ошибка.

demo.simpla2x.ru

у меня на демо код другой в script/ у вас своя версия :) поэтому не работает

<link href="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/css/suggestions.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/js/jquery.suggestions.min.js"></script>
<script type="text/javascript">
	$("input[name='name']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "",
		type: "NAME",
		params: {
			 parts: ["SURNAME", "NAME", "PATRONYMIC"]
		}
	});
	$("input[name='address']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "",
		type: "ADDRESS"
	});
	$("input[name='email']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "",
		type: "EMAIL",
		onSelect: function(suggestion) { console.log(suggestion); }
	});
</script>

 

Link to post
Share on other sites
5 минут назад, ST_RU сказал:

у меня на демо код другой в script/ у вас своя версия :) поэтому не работает

Как раз таки, код взят из вашего footer и просто прописан внутри  {literal} и вставлен мой токен api ключ. Ничего другого я не прописывал.

 

Ваш

<link href="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/css/suggestions.min.css" rel="stylesheet" /> 
<script src="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/js/jquery.suggestions.min.js"></script> <script type="text/javascript">
	$("input[name='name']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "e3d842006144c57b92d45d7b9382fc476e5aef9d",
		type: "NAME",
		params: {
			 parts: ["SURNAME", "NAME", "PATRONYMIC"]
		}
	});
	$("input[name='address']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "e3d842006144c57b92d45d7b9382fc476e5aef9d",
		type: "ADDRESS"
	});
	$("input[name='email']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "e3d842006144c57b92d45d7b9382fc476e5aef9d",
		type: "EMAIL",
		onSelect: function(suggestion) { console.log(suggestion); }
	});
</script>

 

Мой 

 {literal}
<link href="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/css/suggestions.min.css" rel="stylesheet" /> 
<script src="https://cdn.jsdelivr.net/npm/suggestions-jquery@19.5.0/dist/js/jquery.suggestions.min.js"></script> 
<script type="text/javascript">
	$("input[name='name']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "6eb9468e848fdc38b3a4d8b33cd821cdd87edc9f",
		type: "NAME",
		params: {
			 parts: ["SURNAME", "NAME", "PATRONYMIC"]
		}
	});
	$("input[name='address']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "6eb9468e848fdc38b3a4d8b33cd821cdd87edc9f",
		type: "ADDRESS"
	});
	$("input[name='email']").suggestions({
		serviceUrl: "https://dadata.ru/api/v2",
		token: "6eb9468e848fdc38b3a4d8b33cd821cdd87edc9f",
		type: "EMAIL",
		onSelect: function(suggestion) { console.log(suggestion); }
	});
</script>
{/literal}

 

Версия jquery не имеет значения

Edited by alexivchenko
Link to post
Share on other sites
6 минут назад, ST_RU сказал:

6c31ee9f1dbdc4a448941db50a3ab81a.png

у меня чистый, без literal

может jquery.js не 1v использовать? 

Какая-то мистика, скачал версию как у вас jquery-3.3.1.min.js, убрал {literal} и что-то изменилось? нет...

Simpla чистая как слеза... но даже тот факт, что у вас Okay, эту проблему не решает

Link to post
Share on other sites

У вас в консоль отдаёт ошибку при наборе текста. т.е. работает/проверяет набор. отбивает сервис с ошибкой 403. https://dadata.ru/api/suggest/party/#data-sources Проблема именно с вашим ключом. Вы подтвердили почту аккаунта у них при регистрации? Попробуйте им задать вопрос в техподдержке.

Link to post
Share on other sites
2 часа назад, alexivchenko сказал:

Какая-то мистика, скачал версию как у вас jquery-3.3.1.min.js, убрал {literal} и что-то изменилось? нет...

Simpla чистая как слеза... но даже тот факт, что у вас Okay, эту проблему не решает

Все же по русски написано:

   "Feature 'SUGGESTIONS' disabled for token 'fe422a0dfd2178aa993f32bce3f6273586cd6bd7'. See https://dadata.userecho.com/topics/1834
Свойство
SUGGESTIONS отключено для вашего ключа. И ссылка куда надо копать.
Edited by a13x
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...