Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problém s přidáváním polí při AJAX redrawControl() #70

Open
Foizo opened this issue May 7, 2021 · 1 comment
Open

Problém s přidáváním polí při AJAX redrawControl() #70

Foizo opened this issue May 7, 2021 · 1 comment

Comments

@Foizo
Copy link

Foizo commented May 7, 2021

Ahoj,
podařilo se mi rozjet překreslování části formu ajaxem, ale nikdy to nepřidá více jak jedno nové pole. Tzn. kliknu na button "Přidat obrázek" zobrazí se mi jedno pole pro upload, ale když kliknu znovu na ten button už se mi další pole nepřidá... nevíte někdo jak s tím naložit?

A druhá věc -> jakmile dám do parametru addCreateButton jiné číslo než 1 tak se nevykreslí vůbec nic.

componenta

$multiplier = $form->addMultiplier('article_images', function (Container $container, Form $form) {
            $container->addUpload('image', 'Obrázek k článku (600x400)')
                ->addRule(Form::IMAGE, 'admin.travel.category_form.wrong_image_format')
                ->setRequired(false);
        }, 0, 10);

$multiplier->addCreateButton('Přidat obrázek', 1, function () {
    $this->redrawControl('travelPageForm');
    $this->redrawControl('multiplier');
})->addClass('btn-sm btn-primary ajax');

$multiplier->addRemoveButton('Odebrat', function () {
    $this->redrawControl('travelPageForm');
    $this->redrawControl('multiplier');
})->addClass('btn-sm btn-danger ajax');

latte

{snippetArea travelPageForm}
{form travelPageForm}
.....
{snippet multiplier}
<div n:multiplier="article_images" class="form-group">
<label n:name="image"/>{btnRemove}
<input n:name="image" class="form-control">
</div>
{btnCreate article_images}
{/snippet}
.....
@blondak
Copy link

blondak commented Jul 30, 2021

ono by to nově asi mělo být

$multiplier = $form->addMultiplier('article_images', function (Container $container, Form $form) {
    $container->addUpload('image', 'Obrázek k článku (600x400)')
        ->addRule(Form::IMAGE, 'admin.travel.category_form.wrong_image_format')
        ->setRequired(false);
    }, 0, 10
);

$multiplier->addCreateButton('Přidat obrázek')
    ->addClass('btn-sm btn-primary ajax')
;

$multiplier->addRemoveButton('Odebrat')
    ->addClass('btn-sm btn-danger ajax')
;

$multiplier->onCreate[] = $refresh = function () {
    $this->getParent()->redrawControl('travelPageForm');
    $this->getParent()->redrawControl('multiplier');
});

$multiplier->onRemove[] = $refresh;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants