Помогите подсказать с выводом результатов в HTML, через Sendit
Добрый день, наверняка некоторые люди пользовались Sendit. И у меня есть пару вопросов по документации, может кто-то сталкивался и может привести примеры.
Вот есть документация, где описано что компонент умеет выводить полученный HTML на страницу.
docs.modx.pro/components/sendit/sending#obrabotka-otveta-servera
Так же прочитал что надо добавить параметр «resultBlockSelector» но нету какого либо примера как его указать.
Так же там написано «ответ должен в параметре data устанавливать ключ html со строкой в формате HTML.»
Может кто то может поделиться примером или подсказать как это реализовать, так как в документации нету примера, и я не совсем понял как оно работает.
Вот например я хотел сделать при клике на radiobutton выводить разный html
Может ли кто то показать один небольшой пример как правильно работать с этими параметрами.
А если кто то сможет подсказать как сделать что бы каждый новый выводимый результат имел возможность так же запускать отдельный новый пресет, то получит +100 к карме ))
Вот есть документация, где описано что компонент умеет выводить полученный HTML на страницу.
docs.modx.pro/components/sendit/sending#obrabotka-otveta-servera
Так же прочитал что надо добавить параметр «resultBlockSelector» но нету какого либо примера как его указать.
Так же там написано «ответ должен в параметре data устанавливать ключ html со строкой в формате HTML.»
Может кто то может поделиться примером или подсказать как это реализовать, так как в документации нету примера, и я не совсем понял как оно работает.
Вот например я хотел сделать при клике на radiobutton выводить разный html
<form>
<div class="item">
<input type="radio" name="radio" data-si-form data-si-preset="change" data-si-event="click" value="Купить">
</div>
<div class="item">
<input type="radio" name="radio" data-si-form data-si-preset="change" data-si-event="click" value="Продать">
</div>
<div class="resultSendit"></div>
</form>Сам хук сделал такой'change' => [
'hooks' => '',
'snippet' => 'loadSnippet'
'resultBlockSelector' => 'resultSendit'
],Сам снипет имеет такое содержание $html = '<b>Какой то результат</b>';
return $html;Но не понимаю правильно ли я параметры задал. Может ли кто то показать один небольшой пример как правильно работать с этими параметрами.
А если кто то сможет подсказать как сделать что бы каждый новый выводимый результат имел возможность так же запускать отдельный новый пресет, то получит +100 к карме ))
Комментарии: 8
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
По моей задумки, название параметра «resultBlockSelector» должно было навести любого мало-мальски опытного разработчика на мысль о том, что в качестве значения нужно указать селектор, по которому JS сможет в DOM отыскать нужный блок для вставки HTML. Поэтому очевидно, что «resultSendit» не является валидным селектором. В твоём случае нужно писать так
По поводу возвращаемых значений. В документации есть раздел Разработка с примером сниппета. Из примера видно, что для возврата значения используются методы success и error. Оба метода принимают два параметра: $msg — сообщение и $data — массив данных. Так вот в твоём случае $data должен быть таким
Сделал как вы сказали, теперь вроде ошибок в консоли нет, но сам текст в ДИве который указал в «resultBlockSelector» не появится.
В консоли вроде всё нормально и ошибок нету, выдаёт такое
Но так и не понял что я сделал не так.
Подскажите что я упустил.
Наверняка кто-то в будущем с этим тоже столкнётся и им этот ответ тоже поможет.
docs.modx.pro/components/sendit/snippets#primer-ispolzovaniya-7
Не понимаю что не так сделал
Наконец таки