Сразу хочу предупредить - я не программист, но часто посещаю этот форум, где узнаю много полезной информации. Сейчас понадобилась ваша помощь/подсказка или/или готовое решение. Суть вопроса:
Я пользуюсь сервисом Битрикс24, в частности имеющимися там CRM-формами для публикации их на сайте. В системе можно настраивать поля формы под себя, из уже имеющихся там. Вот я сделал форму, поставил на сайт. И хочу чтобы в одно из полей этой встроенной формы автоматом при загрузке вставлялось значение. Конкретнее - часть ссылки с текущего сайта, на котором эта форма стоит. Это нужно для того, чтобы я мог разместить одну и ту же форму на нескольких сайтах, а при ее заполнении и отправке в Битриксе я уже видел, с какого сайта пришла заявка (вот для этого и нужно это копирование текущей ссылки в указанное поле).
Я сделал небольшой скрипт, который берет нужное мне значение (часть ссылки без хоста, этого достаточно) и вставляет в указанное поле класса input с определенным ID:
Код: Выделить всё
<script>
function name_change() {
var fileName = window.location.pathname;
document.getElementById('LEAD_TITLE').value= fileName;
}
window.onload=name_change
</script>
[HTML]<input class="crm-webform-input" type="text" name="LEAD_TITLE" id="LEAD_TITLE" placeholder="">[/HTML]
Форма подгружается во фрейме, код, сформированный для подгрузки (из битрикса). Там я уже вставил часть вышеуказанного кода, но вероятно не правильно... потому как не происходит подстановки в поле LEAD_TITLE значения из window.location.pathname
Код: Выделить всё
<script id="bx24_form_inline" data-skip-moving="true">
(function(w,d,u,b){w['Bitrix24FormObject']=b;w[b] = w[b] || function(){arguments[0].ref=u;
(w[b].forms=w[b].forms||[]).push(arguments[0])};
if(w[b]['forms']) return;
s=d.createElement('script');r=1*new Date();s.async=1;s.src=u+'?'+r;
h=d.getElementsByTagName('script')[0];h.parentNode.insertBefore(s,h);
})(window,document,'https://alcompstudio.bitrix24.ru/bitrix/js/crm/form_loader.js','b24form');
b24form({"id":"8","lang":"ru","sec":"kqrzqp","type":"inline"});
function name_change() {
var fileName = window.location.pathname;
document.getElementById('LEAD_TITLE').value= fileName;
}
iframe.onload=name_change
</script>
http://newtrendmarket.com/landing/sample-page/
сайт - на конструкторе Live Composer, вордпресс.
Я знаю, есть еще некие альтернативы, забирать значения полей через rest.php в битриксе, но это мне не совсем подходит, т.к. там не приходят уведомления в админке битрикса, и мне нужно указывать товары из каталога, а как сделать это я не знаю... повторюсь: не программист
Подскажите, что я не так сделал, и возможно ваше решение по этому вопросу, если конечно, это можно реализовать, не углубляясь сильно в код, альтернативным решениям также буду рад ).
Просьба к уважаемым специалистам: не отправляйте меня сразу "учить матчасть" по программированию, я прекрасно это понимаю и осознаю, что нужно знать хотя бы основы, просто сложилась такая ситуация, что нужно срочно и сейчас, желательно готовое решение
Буду признателен за дельную информацию. Если что-то не указал для решения вопроса - подскажите, я сообщу доп.данные.