jQuery Form Wizard a Nefunkčné addRule, setReaquired

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

Zdravim …
Vopred sa ospravedlňujem za hlúpo pomenovanú tému no som hore už pomaly 27hod. a na konci svojich síl…
pokiaľ moderátorm názov nevyhovuje prosím o jeho zmenu :)

Ale teraz k veci…
Mám na stránke registračný formulár jednej šablóny jedná sa o jQuery Form Wizard Demo TU

problém je, že som v presenteri vytvoril napr.

$form->addText('username', 'Užívateľ')
			 ->setAttribute('class', 'span6 m-wrap')
			 ->setRequired('Zadajte prosím užívateľské meno')
			 ->addRule(Form::FILLED, 'musíte vyplniť toto poľe')
			 ->addRule(Form::MIN_LENGTH, 'Užívateľské meno musí obsahovať min. %d znaky', 4)
			 ->addRule(Form::MAX_LENGTH, 'Maximálny počet znakov je %d', 64);

Lenže ak nechám políčko prázdne a prejdem na krok 2 tak ma to neupozorní na to, že je políčko prázdne ale proste len prejde na druhý krok.
V jQuery sa nevyznám a nechcem moc doň zasahovať preto sa radšej z posledných síl pýtam tu kompetentných ako docieliť to aby ma to ďalej nepustilo pokiaľ nebude prvý tab vo formuláry vyplnený ?

pripájam ešte presenter

<?php
namespace mainModule;
use Nette\Application\UI\Form;
use Nette\Utils\Html;

class SignPresenter extends \BasePresenter
{
	/** @persistent */
    public $backlink = '';

	protected function createComponentUserRegisterForm()
	{
		$form = new Form;

		$form->addText('username', 'Užívateľ')
			 ->setAttribute('class', 'span6 m-wrap')
			 ->setRequired('Zadajte prosím užívateľské meno')
			 ->addRule(Form::FILLED, 'musíte vyplniť toto poľe')
			 ->addRule(Form::MIN_LENGTH, 'Užívateľské meno musí obsahovať min. %d znaky', 4)
			 ->addRule(Form::MAX_LENGTH, 'Maximálny počet znakov je %d', 64);

		$form->addPassword('password', 'Heslo')
			 ->setAttribute('class', 'span6 m-wrap')
			 ->setRequired('Zadajte prosím heslo')
			 ->addRule(Form::MIN_LENGTH, 'heslo musí obsahovať min. %d znaky', 4)
			 ->addRule(Form::MAX_LENGTH, 'Maximálny počet znakov je %d', 64);

		$form->addPassword('repassword', 'Potvrďte heslo')
			 ->setAttribute('class', 'span6 m-wrap')
			 ->addConditionOn($form['password'], Form::VALID)
			 ->addRule(Form::FILLED, 'Prosím opakujte heslo')
             ->addRule(Form::EQUAL, 'Heslá sa neshodujú.', $form['password']);

		$form->addText('fullname', 'Meno a Priezvisko')
			 ->setAttribute('class', 'span6 m-wrap');

		$form->addText('email', 'Emailová adresa')
			 ->setEmptyValue('@')
			 ->setAttribute('class', 'span6 m-wrap');

		$form->addText('phone', 'telefonné číslo')
			 ->setAttribute('class', 'span6 m-wrap')
			 ->addRule(Form::INTEGER, 'telefonné číslo môže obsahovať iba číslice 0-9');

		$genders = $this->genderProfile();
		$form->addRadioList('gender', 'Pohlavie', $genders)
			 ->setDefaultValue('man', TRUE)
			 ->getSeparatorPrototype()->setName(NULL);

		$form->addText('adress', 'Adresa')
			 ->setAttribute('class', 'span6 m-wrap');

		$form->addText('city', 'Mesto')
			 ->setAttribute('class', 'span6 m-wrap');

		$form->addText('zip', 'PSČ')
			 ->setAttribute('class', 'span6 m-wrap');

		$countrys = $this->countryProfile();
		$form->addSelect('country', 'Štát', $countrys)
			 ->setAttribute('class', 'span6 m-wrap');

		$form->addCheckBox('agree', Html::el('font')
			 ->setHtml('Potvrdzuje a Súhlasím s <a n:href="">podmienkami</a>'))
			 ->setDefaultValue(TRUE);

		$form->addButton('back', 'Späť')
			 ->setAttribute('onclick', 'javascript:;');

		$form->addButton('continue', 'Pokračovať')
			 ->setAttribute('onclick', 'javascript:;');

		$form->addSubmit('register_me', 'Registrovať');
		$form->onSuccess[] = callback($this, 'UserRegisterSuccessSubmitted');

		return $form;
	}

	public function UserRegisterSuccessSubmitted()
	{

	}
}
**No a nakoniec odkazy na jQuery scripty na mojom Webe**

jquery.bootstrap.wizard.js
jquery.bootstrap.wizard.min.js
prettify.js
bootstrap.js
bootstrap.min.js

SontoEremo
Člen | 341
+
0
-

Ešte môj View up.latte

{block maintitle}Register{/block}

{block maincontent}
<div class="row-fluid">
   <div class="span12">
      <div class="portlet box blue" id="form_wizard_1">
         <div class="portlet-title">
            <h4>
               <i class="icon-reorder"></i> Registrácia - <span class="step-title">Krok 1/3</span>
            </h4>
               <div class="tools hidden-phone">
                  <a href="javascript:;" class="collapse"></a>
                  <a href="javascript:;" class="reload"></a>
                  <a href="javascript:;" class="remove"></a>
               </div>
         </div>
         <div class="portlet-body form">
            {form userRegisterForm class=>"form-horizontal"}
             {control $form errors}
               <div class="form-wizard">
                  <div class="navbar steps">
                     <div class="navbar-inner">
                        <ul class="row-fluid">
                           <li class="span3">
                              <a href="#tab1" data-toggle="tab" class="step active">
                                 <span class="number">1</span>
                                 <span class="desc"><i class="icon-ok"></i> Vytvorenie účtu</span>
                              </a>
                           </li>
                           <li class="span3">
                              <a href="#tab2" data-toggle="tab" class="step">
                                 <span class="number">2</span>
                                 <span class="desc"><i class="icon-ok"></i> Vytvorenie profilu</span>
                              </a>
                           </li>
                           <li class="span3">
                              <a href="#tab3" data-toggle="tab" class="step">
                                 <span class="number">3</span>
                                 <span class="desc"><i class="icon-ok"></i> Potvrdenie</span>
                              </a>
                           </li>
                        </ul>
                     </div>
                  </div>
               <div id="bar" class="progress progress-success progress-striped">
                  <div class="bar"></div>
               </div>
                  <div class="tab-content">
                     <div class="tab-pane active" id="tab1">
                        <h3 class="block">Zadajte údaje pre prihlasovanie</h3>
                           <div class="control-group">
                              {label username class=>"control-label"/}
                              <div class="controls">
                                 {input username}
                                 <span class="help-inline">Vytvorte si užívateľské meno</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label password class=>"control-label"/}
                              <div class="controls">
                                 {input password}
                                 <span class="help-inline">min. 4 znaky - max. 64 znakov</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label repassword class=>"control-label"/}
                              <div class="controls">
                                 {input repassword}
                                 <span class="help-inline">Zadajte rovnáke heslo pre kontrolu</span>
                              </div>
                           </div>
                     </div>
                     <div class="tab-pane" id="tab2">
                        <h3 class="block">Zadajte prosím vaše fakturačné údaje</h3>
                           <div class="control-group">
                              {label fullname class=>"control-label"/}
                              <div class="controls">
                                 {input fullname}
                                 <span class="help-inline">Zadajte vaše celé meno</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label email class=>"control-label"/}
                              <div class="controls">
                                 {input email}
                                 <span class="help-inline">Zadajte vašu emailovú adresu</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label phone class=>"control-label"/}
                              <div class="controls">
                                 {input phone}
                                 <span class="help-inline">Zadajte vaše telefonné číslo</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label gender class=>"control-label"/}
                              <div class="controls">
                                 <label class="radio">
                                  {input gender}
                                 </label>
                              </div>
                           </div>
                           <div class="control-group">
                              {label adress class=>"control-label"/}
                              <div class="controls">
                                 {input adress}
                                 <span class="help-inline">Zadajte adresu vašho bydliska</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label city class=>"control-label"/}
                              <div class="controls">
                                 {input city}
                                 <span class="help-inline">Zadajte vaše mesto</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label zip class=>"control-label"/}
                              <div class="controls">
                                 {input zip}
                                 <span class="help-inline">Zadajte vaše PSČ</span>
                              </div>
                           </div>
                           <div class="control-group">
                              {label country class=>"control-label"/}
                              <div class="controls">
                               {input country}
                               <span class="help-inline">Vyberte si krajinu v ktoréj žijete</span>
                              </div>
                           </div>
                     </div>
                  </div>
                  <div class="form-actions clearfix">
                     {input back class=>"btn button-previous"}
                     {input continue class=>"btn blue button-next"}
                     {input register_me class=>"btn green button-submit"}
                  </div>
               </div>
            {/form}
         </div>
      </div>
   </div>
</div>
{/block}