[SOLVED] Ajax pada textfield menggunakan model

Halooo master2 Yii. Mau minta wejangan nih :D

Begini kk,

  1. Saya punya model Mahasiswa

  2. Pada _formcreate, Saya punya $form->textfield($model,nik)

  3. Klo saya input "NIK" dan ternyata ditemukan, maka di bawah textField langsung ada Text berupa "NAMA" dari orang dengan NIK tersebut.

  4. Itu bisa kan pake ajaxValidation, caranya gimana kk?. Minta gambarannya ya :D

===

saya udah keliing2, ini baris2 yang saya gak ngerti.

baris ini maksudnya apa?. cara manggilnya gimana?.


<?php $this->performAjaxValidation($model);?>

baris ini gunanya apa terus maksudnya apa?.


$(document).ready(function()

	{

	    $('#user-form').submit(function(event)

	    {

	        event.preventDefault();

	        var $form = $(this);

	        $.ajax({

	            url: $(this).attr('action'),

	            dataType: 'json',

	            type: 'POST',

	            data : $form.serialize()+'&ajax='+$form.attr('id'),

	            success: function(data, textStatus, XMLHttpRequest)

	            {

	                if (data != null && typeof data == 'object'){

	                    $.each(data, function(key, value){

                        $('#error').append(value);

	                    });

	                }

	            },

	            error: function(XMLHttpRequest, textStatus, errorThrown)

	            {

	            }

	        });

	        return false;

	    }

	}

Maksudnya untuk validasi aja atau untuk search nama sekalian?

klo untuk search bisa pake CJuiAutoComplete aja.

lebih lengkapnya intip aj di http://www.yiiframework.com/doc/api/1.1/CJuiAutoComplete

moga mencerahkan…

Bukan search gan,

Saya juga ud coba pake CJuiAutoComplete, Hasilnya Lemooot banget(Padahal dataya cuma 50ribuan). :D

Makanya saya pake ide kyk pertanyaan saya tadi.

Maksudnya data yang kamu proses itu berupa ajax atau tidak…ini akan berpengaruh jika di formnya seperti ini:




<?php $form=$this->beginWidget('CActiveForm', array(

      'id'=>'login-form',

     'enableAjaxValidation'=>true,


)); ?>



perhatikan

kalau ngak ada ini ya code kamu diatas tidak di proses, itu berlaku kalau enableAjaxValidatin=true.

itu kode ajax pakai JQuery, coba di pelajari basic pemakaian JQuery…

Thx All sudah solved

  1. DI Controller bikin action yang nge findall berdasarkan NIK

  2. Di View pake activeTextField menggunakan ajax. :D

sama kayak Ane Agan PutriLangit…

kemarin Ane pake buat search regional seluruh indonsia… juga lama

kalo ane pake query langsung …!

saya malahan pake CTreeView yg nampilin data di node nya ada 20 anak, ga tahu kenapa dia lemot tampil nya…

Ho’oh gan, next ane juga butuh AutoComplete yang cukup cepat dengan data banyak.

Kabarnya Yii versi berikutnya proses query bakalan bagus banget. Klo maslaah query nunggu master yang lain komen aja deh :D.

waduh, itu node dan anak diambil dari database atau sudah bentuk baku?.

dari database…

Hmm…ampun dah klo masalah query cepat. belum nyampe sana ilmu ane.

ntar klo ud berhasil share ya gan. :)

putriLangit bole liat code nya?..saya msh ga gerti ma jquery dan ajax ne…

aku kan dah pernah (jawab) tulis di postingan agan yang itu. :D

Jangan2 yang aq jawab gak kebaca :(

chadnox boleh tolong dikasih liat code untuk controller dan view nya, saya udah cari banyak referensi dan kebanyakan bahas ajax di dropdownlist, kebetulan kasus nya, mirip dengan yg saya ingin kerjakan. Makasih chadnox

ini controllernya


public function actionNiktoNama()

	{

		$nik = $_POST["Formcreate"]["nik"];// ini POST , 

		$model = IniModelKaryawan::model()->findByAttributes(array('NIK'=>$nik)); // find by nik

		if(!empty($model))

		{

			$nama = $model->NAMA_KARYAWAN;

		}	

		echo '*'.$nama;

	}



ini viewnya


<?php echo CHtml::beginForm();

echo CHtml::activeTextField($model,'nik',array('ajax'=>array('type'=>'POST',

'url'=>Yii::app()->createUrl('namaController/NiktoNama'),

'update'=>'#nama_krywn',

// 'data'=>'js:javascript statement',

),));

echo CHtml::endForm();

?>

</br>&nbsp;&nbsp;&nbsp;

<span id="nama_krywn" style="color:green">*</span>

kodingnya taro di mana bang? tolong pencerahannya, maklum masih newbie.

kasusnya sama nih…

itu kan udah di sebutin gan , ada yang ditaro di controller dan ada yang ditaro di view,

kalo belum berhasil, mungkin rules action nya belum di daftarin. :D CMIW

Agan Nanya nih masih newbie

itu pas di POST

" $nik = $_POST["Formcreate"]["nik"];// ini POST "

fromcreate itu memanggil view formnya…?

dan di view formnya itu yang menandakan nama hasil search dari nik di mananya ya…

saya sudah coba tapi pas di tulis nik tertentu di textfiled nama nya content data dari databasenya tidak muncul…mohon pencerahannya

itu pas di POST

" $nik = $_POST["Formcreate"]["nik"];// ini POST "

fromcreate itu memanggil view formnya…?

dan di view formnya itu yang menandakan nama hasil search dari nik di mananya ya…

saya sudah coba tapi pas di tulis nik tertentu di textfiled nama nya content data dari databasenya tidak muncul…mohon pencerahannya

gan mohon pencerahaanya saya udah menggunakan ajax di activeTextenya dan create controllernya rulesnya di controllernya sudah di daftarkan, akan tetapi pas menggambil salah satu nik ni activetextfieldnya untuk namanya tidak ketemu, di firebug untuk jquerynya tidak ada masalah, kira kira keNAPA YA

Ini untuk di controllernya

public function actionId(){

        &#036;IdAnggota=&#036;_POST[&quot;_form&quot;][&quot;IdAnggota&quot;];


        &#036;model=Anggota::model()-&gt;findByAttributes(array('IdAnggota'=&gt;&#036;IdAnggota));


        if(&#33;empty (&#036;model)){


            &#036;NamaAnggota=&#036;model-&gt;NamaAnggota;


        }


         echo &#036;NamaAnggota;


    }

dan untuk di viewnya sbb:

<div class="row">

    &lt;?php echo CHtml::beginForm();        


          echo CHtml::activeTextField(&#036;model, 'IdAnggota',


                         array('ajax' =&gt; array('type' =&gt; 'POST',


                                'url' =&gt; Yii::app()-&gt;createUrl('Simpanan/Id'),


                                'update' =&gt; '#nama_Anggota'),


                             )


                        );


          echo CHtml::endForm();?&gt;                            


            &lt;/br&gt;&amp;nbsp;&amp;nbsp;


            &lt;span id=&quot;nama_Anggota&quot; style=&quot;color:black&quot;&gt; * &lt;/span&gt;

apanya yang kurang ya gan, mohon bimbingan dan pencerahaan nya, masih newbiebol

Besar harapannya saya mendapatkan Informasi dan pencerahaanya

Salam Kenal dan terimakasih.