Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript显示隐藏的选择类型_Javascript_Jquery_Forms_Symfony_Sonata Admin - Fatal编程技术网

使用javascript显示隐藏的选择类型

使用javascript显示隐藏的选择类型,javascript,jquery,forms,symfony,sonata-admin,Javascript,Jquery,Forms,Symfony,Sonata Admin,我使用symfony framework,我有两种选择类型: 第二个选择最初是隐藏的,相对于第一个选择的值,第二个选择将显示:为此,我尝试了$this: 脚本 <script type="text/javascript"> $(document).ready(function () { $('.type-produit ').change(function() { if ($('select[id$="_type"]>option:selected').tex

我使用symfony framework,我有两种选择类型:

第二个选择最初是隐藏的,相对于第一个选择的值,第二个选择将显示:为此,我尝试了$this:

脚本

<script type="text/javascript">
$(document).ready(function () {
    $('.type-produit ').change(function() {
     if ($('select[id$="_type"]>option:selected').text() == "Unité")
     {  $('.hidden ').show();  } 
    });
}); 
</script>
$(document).ready(function () {
    $('.soustype').hide();

    $('.type-produit ').change(function() {
         if ($('select[id$="_type"]>option:selected').text() == "Unité") { 
            $('.soustype ').show();  
        }
    });
});

但是第二个选择仍然没有显示,有人可以帮我吗?感谢所有将
soustype
字段更改为
choice
类型(
HiddenType
字段呈现为
),然后您可以在脚本中隐藏或显示该字段

FormType

$formMapper
->add('type','choice', array(
     'choices' => array('Kg' => 'Kg', 'Unité' => 'Unité'),
     'label' => 'Type de vente',
     'attr' =>array('class'=>'type-produit')
))

->add('soustype',HiddenType::class, array(
     'data' => ['Liquide'=>'Liquide','Autres'=>'Autres'],
     'label' => 'Sous types',
     'attr'=>array('class'=>'hidden')
))
...
->add('soustype', 'choice', array(
        'choices' => ['Liquide'=>'Liquide','Autres'=>'Autres'],
        'label' => 'Sous types',
        'attr' => array('class'=>'soustype')
))
脚本

<script type="text/javascript">
$(document).ready(function () {
    $('.type-produit ').change(function() {
     if ($('select[id$="_type"]>option:selected').text() == "Unité")
     {  $('.hidden ').show();  } 
    });
}); 
</script>
$(document).ready(function () {
    $('.soustype').hide();

    $('.type-produit ').change(function() {
         if ($('select[id$="_type"]>option:selected').text() == "Unité") { 
            $('.soustype ').show();  
        }
    });
});

能否共享html输出?默认情况下,HiddenType通常不可见。将第二个选项设置为TextType。当我尝试您的解决方案时,第二个选择仍然初始显示,如果我从第一个选择中选择“Unité”,则会添加另一个选择字段。显示表单类型定义。谢谢@miikes它可以工作,只是我在同一页面的其他脚本中修复了它