Я хочу генерировать предупреждение («привет»), когда пользователь нажимает кнопку в symfony. Если кто-нибудь знает решение, пожалуйста, помогите.
Лучше всего делать это незаметно. Дайте вашей кнопке class
или id
, а затем ссылайтесь на это из JavaScript.
$builder->add('save', ButtonType::class, array(
'attr' => array('class' => 'save', 'id' => 'myBtn'),
));
А затем в вашем шаблоне под формой:
<script>
document.getElementById("myBtn").addEventListener("click", function() { alert('hi'); });
</script>
Вот пример:
$form = $builder->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()){
$this->addFlash("success", "hi");
}
лучшее решение - использовать jquery .. в вашем formType добавьте это:
$builder->add('ADD', ButtonType::class, array(
'attr' => array('class' => 'add', 'id' => 'myBtn'),
));
в js после добавления cdn jquery добавьте этот код:
$('#myBtn').click(function{ alert('here');});
моя кнопка похожа на эту {% block formButtons%} {% trans "Save Order"%}, XiboTimelineSaveOrder ("timelineControl") {% endblock%}