Tarih : 11-09-2009 | Yazan : Hüseyin Bora | Kategori : PHP Faces
Niteliklere erişiken nesne adı -> nitelik adı şeklindendir. örneğim bir textbox birde button bileşenimiz olsun buttona tıklandığında textbox un rengini değiştirelim. faces view tanımlaması aşağıdaki gibidir.
<faces> <@import taglib="phpf.ui.*" prefix="face"/> <face:textbox name ="yazi" text ="Merhaba"/> <face:textbox name ="button" text ="Rengi Değiştir"/> </faces>
class Controller extends Facete{ function Controller(){ parent::FacesController(); $this->render("view.html"); } function buttonClicked($evt){ $this->yazi->setProperty("style", "background:blue"); } }
Örneğimizde textbox bileşenin style niteliğine background:blue değerini artardık ve rengini değiştirmiş olduk.
Bir niteliği değiştirmek istediğinizde
$this->bilesenadi->nitelik=”deger”;
Ya da
$this->yazi->setProperty(”nitelik”, “değer”);
İki kullanımda gecerlidir.
Şimdi örneğimizi biraz daha geliştirelim bir combobox bileşeninde renkler olsun ve seçilen rengi ajax kullanarak textbox nesnesine uygulayalım.
Örneğimiz için view aşağıdaki şekildedir.
<faces> <@import prefix="face" taglib="phpf.ui.*"/> <face:textbox name ="textbox" text ="Merhaba"/> Rengi değiştir <face:combobox name="colors" bind="array(Aqua,Blue,AliceBlue,Beige,Black,Brown ,Navy,Pink,Red,Orange,Yellow ,White,Green)" onchange="ajaxevent"> </face:combobox> </faces>
import("phpf.controllers.facete"); class Style extends Facete { function Style() { parent::Facete(); $this->render("view.phpf"); } protected function colorsChanged($evt) { $color = $this->colors->getSelected(); $this->textbox->setProperty("style","background:$color"); $this->AjaxResponse(); } }
İşte Uygulamamızın Çalışır hali.














