Создание Div с использованием Zend_Form?

#php #zend-framework #zend-form

#php #zend-framework #zend-форма

Вопрос:

Я хочу скрыть / сохранить динамически сгенерированный div внутри родительского div.Я взял следующий фрагмент кода со своей страницы формы.

      ....
    $existing_billing_address = array();
    if (count($all_addr) > 0) {
        $hidden_existing_addr_div = '';
        foreach ($all_addr as $addrvalue) {
            $existing_billing_address[$addrvalue['address_id']] = $addrvalue['address1'];
            $exname = $addrvalue['address_name'];
            $exaddress1 = $addrvalue['address1'];
            $exaddress2 = $addrvalue['address2'];
            $excountry = $addrvalue['country'];
            $exstate = $addrvalue['state'];
            $excity = $addrvalue['city'];
            $exzipcode = $addrvalue['zipcode'];
            $exphone = $addrvalue['phone'];
            $exaddress_id = $addrvalue['address_id'];
            $hidden_existing_addr_div .= "<div id='selectBilling_" . $exaddress_id . "' style='display:none'>";
            $hidden_existing_addr_div .= $exname . "||" . $exaddress1 . "||" . $exaddress2 . "||" . $excountry . "||" . $exstate . "||" . $excity . "||" . $exzipcode . "||" . $exphone . "||" . $exaddress_id;
            $hidden_existing_addr_div .= "</div>";
        }
    }
....
 

Это создаст что-то вроде приведенного ниже,

 > <div style="display: none;" id="selectBilling_40">Dinesh 
> billing||billing add1||Billing
> add2||IN||TA||Chennai||625001||1234567891||40</div><div
> style="display: none;" id="selectBilling_41">kumar shipping||shipping
> add1||shipping add2||US||CA||chennai||72944||1234567891||41</div>
 

Я хочу сохранить вышеупомянутый скрытый div с помощью zend_form.

Пожалуйста, помогите мне в этом.

Комментарии:

1. Ну, в этом случае вы можете использовать zend_form, скрыть его, а затем сохранить его значения.

2. использование этого «Zend_Form_Element_Hidden» создаст скрытое текстовое поле, не div…is возможно создать div с помощью zend_form.

3. Сначала используйте форму Zend (не элемент), а затем измените ее внешний вид с помощью setDecorators. В любом случае, вам не нужно скрывать каждый элемент, вы можете просто скрыть всю форму.

Ответ №1:

Ну, в этом случае вы можете использовать a Zend_Form , скрыть его, а затем сохранить его значения, чтобы вы тоже могли выполнить проверку. Если вы хотите отобразить его как div, вы можете изменить его внешний вид с помощью Zend_Decorator . В любом случае, вам не нужно скрывать каждый элемент, вы можете просто скрыть всю форму.

Ответ №2:

Я использовал скрытое текстовое поле, используя jquery, я взял значение скрытого текстового поля и создал DIV с этим содержимым и очистил значение поля ввода.

 $(function(){
    var val = $('#edit_existing_billingaddr').val();
    $('#edit_existing_billingaddr').after('<div>' val '</div>');
    $('#edit_existing_billingaddr').val('');
});    
 

Но я не использую zend здесь полностью.

Комментарии:

1. Это не очень хорошее решение, потому что таким образом вы не используете zend framework должным образом и не используете возможности zend form, валидаторов и фильтров.

2. да, можете ли вы сказать мне, как мы можем изменить ввод в div с помощью декоратора