From 6d52f5c4461bd26c4e1dea68686d88c71a9d3e22 Mon Sep 17 00:00:00 2001 From: David Date: Fri, 21 Nov 2014 22:14:00 +0100 Subject: TJuiAutoComplete multiselection + quickstart doc implemented Separator, minChars and Frequency properties, added the related quickstart parts --- .../protected/pages/JuiControls/Home.page | 4 ++ .../JuiControls/Samples/TJuiAutoComplete/Home.page | 45 ++++++++++++++++++++++ .../JuiControls/Samples/TJuiAutoComplete/Home.php | 39 +++++++++++++++++++ .../protected/pages/JuiControls/Widgets.page | 25 +++++++++++- 4 files changed, 112 insertions(+), 1 deletion(-) create mode 100644 demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.page create mode 100644 demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.php (limited to 'demos/quickstart') diff --git a/demos/quickstart/protected/pages/JuiControls/Home.page b/demos/quickstart/protected/pages/JuiControls/Home.page index 2573b162..68765faa 100644 --- a/demos/quickstart/protected/pages/JuiControls/Home.page +++ b/demos/quickstart/protected/pages/JuiControls/Home.page @@ -80,6 +80,10 @@ For informations of the specific options of each interaction, follow jQuery-UI I TJuiProgressbar displays a progress bar. +
  • + TJuiProgressbar + provides a list of suggestions on the current partial word typed in the textbox +
  • diff --git a/demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.page b/demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.page new file mode 100644 index 00000000..1338b651 --- /dev/null +++ b/demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.page @@ -0,0 +1,45 @@ + +

    TJuiAutoComplete Samples

    + + + + + + + + +
    +Simple Autocompleter: + + + + +
  • <%# $this->Data['name'] %>
  • +
    +
    + +
    +Autocompleter with multiple selection: + + + + +
  • <%# $this->Data['name'] %>
  • +
    +
    +(Use ',' to separate the selected suggestions) + +
    + +
    diff --git a/demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.php b/demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.php new file mode 100644 index 00000000..c3fba3a9 --- /dev/null +++ b/demos/quickstart/protected/pages/JuiControls/Samples/TJuiAutoComplete/Home.php @@ -0,0 +1,39 @@ +getToken(); + // Sender is the Suggestions repeater + $sender->DataSource=$this->suggestionsForName($token); + $sender->dataBind(); + } + + public function suggestionSelected1($sender,$param) { + $id=$sender->Suggestions->DataKeys[ $param->selectedIndex ]; + $this->Selection1->Text='Selected ID: '.$id; + } + + public function suggestionSelected2($sender,$param) { + $id=$sender->Suggestions->DataKeys[ $param->selectedIndex ]; + $this->Selection2->Text='Selected ID: '.$id; + } + + public function suggestionsForName($name) { + $allChoices = array( + array('id'=>1, 'name'=>'John'), + array('id'=>2, 'name'=>'Paul'), + array('id'=>3, 'name'=>'George'), + array('id'=>4, 'name'=>'Ringo') + ); + + if($name) { + return array_filter($allChoices, function ($el) use ($name) { + return stripos($el['name'], $name) !== false; + }); + } else + return $allChoices; + } + +} \ No newline at end of file diff --git a/demos/quickstart/protected/pages/JuiControls/Widgets.page b/demos/quickstart/protected/pages/JuiControls/Widgets.page index cf72d41d..cedec675 100644 --- a/demos/quickstart/protected/pages/JuiControls/Widgets.page +++ b/demos/quickstart/protected/pages/JuiControls/Widgets.page @@ -10,7 +10,7 @@ PRADO Jui widgets controls can be divided in two groups: For informations of the specific options of each widget, follow jQuery-UI Widget API Documentation for the specific interaction.

    - +

    TJuiProgressbar

    -
    jQuery UI API @@ -25,4 +25,27 @@ The panel takes the aspect of a progressbar ranging from a value of 0 to the val
    + +

    TJuiAutoComplete

    + -
    jQuery UI API + +

    +TJuiAutoComplete is an extension to TActiveTextBox based on jQuery-UI's autocomplete widget. +

    + +

    +TJuiAutoComplete is an extended ActiveTextBox that provides a list of suggestions on the current partial word typed in the textbox. The suggestions are requested using callbacks. The Frequency and MinChars properties sets the delay and minimum number of characters typed, respectively, before requesting for sugggestions. An embedded TRepeater is used to Display the list of suggestions. It can be accessed and styled through the Suggestions property and its sub-properties. +

    + +

    +On each request for suggestions, the OnSuggestion event will be raised. The event handler receives the entered token that can be used to build the list of suggestions and to dataBind() it to the Suggestions repeater. +

    + +

    +When a suggestion is selected the OnSuggestionSelected event is raised, with the index of the selected suggestion contained in the parameter. Multiple selections can be performed in the same textbox. The selections must be separated by any characters specified with the Separator property. +

    + + +
    + -- cgit v1.2.3