• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            xiaoguozi's Blog
            Pay it forword - 我并不覺的自豪,我所嘗試的事情都失敗了······習慣原本生活的人不容易改變,就算現狀很糟,他們也很難改變,在過程中,他們還是放棄了······他們一放棄,大家就都是輸家······讓愛傳出去,很困難,也無法預料,人們需要更細心的觀察別人,要隨時注意才能保護別人,因為他們未必知道自己要什么·····

            Yii supports AJAX form validation, which essentially posts the form values to the server, validates them, and sends back the validation errors, all without leaving the page. It does this every time you tab out of a (changed) field.

            As of 1.1.7, Yii supports regular Javascript validation in addition to AJAX validation, but I'll talk about that in another post.

            Here's how Yii's AJAX validation works:

            1. in your yii form declaration, put:
              <php $form = $this->beginWidget('CActiveForm', array(
              'id'=>'lowercasemodelname-form', //not technically required but works w gii generated controllers
              'enableAjaxValidation'=>true //turn on ajax validation on the client side )); 
              And have at least one form element with a matching error function:
              <?php echo $form->textField($model, 'my_attribute'); ?>
              <?php echo $form->error($model, 'my_attribute'); ?> 
              This makes Yii include the JQuery javascript library, as well as a Yii javascript file called jquery.yiiactiveform.js
            2. In your controller, in create or update, after you load the model, but before you load it from POST, call this
              if(Yii::app()->getRequest()->getIsAjaxRequest()) {
              echo CActiveForm::validate( array( $model)); 
              Yii::app()->end(); 
              } 
              Which is sligtly different than how Gii generates it, but no big diff. CActiveForm::validate() can take an array of models, which is not clear the way Gii does it.
            3. Also make sure that your model has at lease one validation rule for the insert or update scenario. After you tab out of a changed field, Yii sends a standard AJAX POST to the server, and gets back a JSON response like this:
              {"Field_id":["Validation error a"],"Another_field_id":["Validation error B"]} 
              which yii then plugs into the error field below your field.
            4. When you use the $form->error() function, Yii adds a hidden div after your form element:
              <div id="Model_attributename_em_" class="errorMessage" style="display:none"></div>
              If that field has a validation error, then Yii sets the display to block, writes the validation error message to its innerHtml, and then you see the error. If it later validates, yii hides it again.
            5. Yii will also add class names to the parent container of the field that it's validating. In most cases, this is a <div class="row">. When a form field is valid, it adds "success" class to the div - which makes it green. When it's invalid, it adds "error" class, which makes it red. It also quickly adds a "validating" class, which does nothing, but you can supply it yourself and change the look of a field while it's validating.
            轉自:http://learnyii.blogspot.tw/2010/12/yii.html
            posted on 2012-12-26 12:45 小果子 閱讀(546) 評論(0)  編輯 收藏 引用 所屬分類: 學習筆記框架
            久久99热这里只有精品国产| 国产呻吟久久久久久久92| 精品国产热久久久福利| 久久综合久久伊人| 精产国品久久一二三产区区别| 国产精品99久久精品爆乳| 91麻精品国产91久久久久| 亚洲欧美成人久久综合中文网| 亚洲人成无码久久电影网站| 欧美日韩精品久久免费| 99久久99久久精品国产| 亚洲色欲久久久久综合网| 国产成人久久精品区一区二区| 国产激情久久久久影院老熟女免费| 久久国产成人午夜AV影院| 日产精品久久久久久久| 久久精品桃花综合| 一级做a爰片久久毛片人呢| 伊色综合久久之综合久久| 国产精品久久久久影视不卡| 婷婷久久综合九色综合九七| 热久久这里只有精品| 91视频国产91久久久| 欧美成人免费观看久久| a级毛片无码兔费真人久久| 久久天天躁狠狠躁夜夜96流白浆 | 久久人人爽人人爽人人片AV高清| 久久99国产精品二区不卡| 久久亚洲美女精品国产精品| 日韩欧美亚洲综合久久影院Ds | 久久无码国产专区精品| 久久夜色撩人精品国产小说| 国产成人久久精品一区二区三区 | 中文字幕日本人妻久久久免费| 久久久久99精品成人片三人毛片| 狠狠色综合久久久久尤物| 久久99国产精品久久| 久久99久久99小草精品免视看| 久久久久高潮毛片免费全部播放 | 亚洲综合久久综合激情久久| 亚洲人成精品久久久久|