Symfony 3.0 и Easy Admin: как настроить поле типа

Я использую EasyAdminBundle и Symfony 3.0 и у меня есть поле «status», которое по умолчанию является текстовым полем, и я хочу, чтобы оно было типом выбора, но с возможностью отображения или скрытия некоторых других полей в событии изменения с использованием javascript.
Проблема в том, что поле отображается, но каким-то образом оно не будет скрывать поле при изменении параметра.
Кроме того, я не уверен, что мой подход хорош, потому что документы Symfony не достаточно ясны, и для меня их подход не работает.

Итак, код выглядит так

MyBundle / Controller / AdminController

public function createEditForm($entity, array $entityProperties)
{
$editForm = parent::createEditForm($entity, $entityProperties);

if($entity instanceof Employee){
$editForm->remove('status');
$editForm->add('status', ChoiceType::class, array(
'choices' => array(
'Working' => "active",
'Not working' => 'inactive'
)
));
}
return $editForm;
}

public function createNewForm($entity, array $entityProperties)
{
$newForm = parent::createNewForm($entity, $entityProperties);

if($entity instanceof Employee){
$newForm->remove('status');
$newForm->add('status', ChoiceType::class, array(
'choices' => array(
'Choose an option' => null,
'Working' => true,
'Not working' => false
)
));
}
return $newForm;
}

MyBundle / Ресурсы / просмотров / Форма / employeestatusfield.html.twig

{% extends 'EasyAdminBundle:default:new.html.twig' %}
{% form_theme form 'EmployeeBundle:Form:employeestatusfield.html.twig' %}

{% block _employee_status_widget %}
<script type="text/javascript">
alert('tiiw');
$(document).ready(function () {
toggleFields();
$("#employee_status").change(function () {
toggleFields();
});
});
function toggleFields() {
if ($("#employee_status").valueOf() == 1) {
$("#employee_quitAt").hide();
}
else
$("#employee_quitAt").show();
}
</script>
{% endblock %}

Спасибо за помощь.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]