簡體   English   中英

Symfony,隱藏表單字段

[英]Symfony, Hidden Form Field

我在隱藏表單域時遇到問題。 例如:

        ->add('new_password', 'repeated', array(

            'first_options' => array(
                'label' => 'Nowe hasło',
                'attr'  =>  array('style'=>'display:none;')),
            'second_options' => array(
                'label' => 'Powtórz nowe hasło',
                'attr'  =>  array('style'=>'display:none;')),
            'mapped' => false,
            'required' => false,
        ));

字段不可見,但標簽可見。 我想要隱藏字段,但標簽應該隱藏到。 我想在單擊按鈕后在Jquery中顯示它。 有什么想法嗎?

首先,這不是Hidden Field Type而是您要通過傳遞style='display:none;'隱藏的重復類型style='display:none;' 屬性。

通常,如果您不想顯示給定的標簽,則可能需要自定義表單呈現。

例如,

{{ form_row(yourForm.new_password) }} {# in case you're using the form_row helper #}

應該替換為

{{form_widget(yourForm.new_password) }}

因為form_row(yourForm.yourField)實際上是它的快捷方式,

{{ form_errors(yourForm.yourField) }}
{{ form_label(yourForm.yourField) }}
{{ form_widget(yourForm.yourField) }}

也,

為什么您需要以這種方式隱藏重復的密碼字段?

如果只想在單擊按鈕時顯示它,為什么不將newPassword小部件包裝在沒有顯示的div中?

但是,如果您想向標簽添加屬性,則可以使用如下所示的選項label_attr

{{ form_row(form.name, {'label_attr ':{'class':'hidden'}}) }}

要么

->add('new_password', 'repeated', array(

            'first_options' => array(
                'label' => 'Nowe hasło',
                'label_attr'  =>  array('style'=>'display:none;')),
            'second_options' => array(
                'label' => 'Powtórz nowe hasło',
                'label_attr'  =>  array('style'=>'display:none;')),
            'mapped' => false,
            'required' => false,
        ));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM