live form validace – ukázka v praxi

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
FJP
Člen | 124
+
0
-

hoj,

nevím, jak se dál chytit – používám tuto komponentu

layout

        <script src="{$basePath}/bower_components/jquery/dist/jquery.min.js"></script>
        <script src="{$basePath}/bower_components/nette-forms/src/assets/netteForms.js"></script>
        <script src="{$basePath}/bower_components/nette.ajax.js/nette.ajax.js"></script>
        <script src="{$basePath}/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
        <script src="{$basePath}/bower_components/Nette-LiveFormValidation/src/live-form-validation.js"></script>
        <script>
            LiveForm.setOptions({
                messageErrorPrefix: 'Error: ',
                messageParentClass: 'has-error',
                wait: 500
            });
        </script>

php komponenty

        $form->addText('name', 'Jméno *')
            ->setRequired();

šablona – komponenta

        {label name class=>'col-md-12 col-lg-12' /}
        <div class="col-md-12 col-lg-12 {if $form['email']->error}has-error{/if}">
            {input name class => "form-control input-lg"}
            {if $form['name']->error}
                <span class="error">{$form['name']->error}</span>
            {/if}
        </div>

Konzole píše chybu: TypeError: LiveForm.setOptions is not a function … a tak jsem zkusil odebrat

LiveForm.setOptions({
                ...
            });

Ale errory se stejně neukazují – nevím, jak to mám použít v šabloně. Může mě někdo navést? Díky.

ryder
Člen | 17
+
0
-

V dokumentaci k té komponentě se píše:
The script already contains the netteForms.js file, so don't use it again and remove it from your HTML document. tak bych pro začátek zkusil odstranit řádek

<script src="{$basePath}/bower_components/nette-forms/src/assets/netteForms.js"></script>
FJP
Člen | 124
+
0
-

když to smažu zobrazí se bublinka u inputu místo, aby vyskočil alert, jinak se nic nezmění

galab
Backer | 74
+
0
-

FJP napsal(a):

Konzole píše chybu: TypeError: LiveForm.setOptions is not a function …

to znamená, že se ti nenačetl ten live-form-validation.js skript, možná chyba v cestě nebo právech…

FJP
Člen | 124
+
0
-

galab napsal(a):

FJP napsal(a):

Konzole píše chybu: TypeError: LiveForm.setOptions is not a function …

to znamená, že se ti nenačetl ten live-form-validation.js skript, možná chyba v cestě nebo právech…

Načetl, když kliknu v prohlížeči ve zdrojáku na umístění live-form-validation.js, tak se mi ukáže js skript.

galab
Backer | 74
+
0
-

ok, načetl, ale nezinicializoval – nemáš tam ještě další error?
případně nekompatibilita verzí nette vs nette.ajax vs liveformvalidation – bc breaky