﻿<?xml version="1.0" encoding="utf-8"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Intersoft Community - WebScheduler - WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><description /><generator>http://www.intersoftsolutions.com</generator><language>en</language><copyright>Copyright 2002 - 2015 Intersoft Solutions Corp. All rights reserved.</copyright><ttl>60</ttl><item><title>WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><pubDate>Thu, 10 Oct 2013 23:24:13 GMT</pubDate><dc:creator>Hans</dc:creator><category>WebCombo Clientside Events</category><category>FilterExpression</category><description>Hello,&lt;br /&gt;&lt;br /&gt;I glad to hear that you have resolved your filtering scenario.&lt;br /&gt;&lt;br /&gt;For the “first key stoke” issue, since this is a different (new) topic, please kindly create new thread / post regarding the “first key stoke” issue.&lt;br /&gt;Later on, in the new thread, please kindly provide us the simple runnable sample that replicate the issue and the guidance how-to reproduce the issue as well.&lt;br /&gt;&lt;br /&gt;Thank you very much for your help.&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;Hans.&lt;br /&gt;&lt;br /&gt;</description></item><item><title>WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><pubDate>Thu, 10 Oct 2013 14:56:29 GMT</pubDate><dc:creator>luwen</dc:creator><category>WebCombo Clientside Events</category><category>FilterExpression</category><description>&lt;p&gt;That works beautifully.  Thanks!&lt;/p&gt;&lt;p&gt;I saw an another issue.  When you use arrow keys to navigate the grid (with CellClickAction="CellSelect"), if the column is a webcombo or dropdownlist, your first key stoke is ignored.  While if the column is a textbox, your first key stoke is NOT ignored. How to make the first key stoke accepted as a "real" user input for webcombo and dropdownlist?&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Luwen&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;</description></item><item><title>WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><pubDate>Wed, 09 Oct 2013 22:30:00 GMT</pubDate><dc:creator>hans@intersoftpt.com</dc:creator><category>WebCombo Clientside Events</category><category>FilterExpression</category><description>&lt;p&gt;Hello,&lt;br /&gt;&lt;br /&gt;Thank you for the reply.&lt;br /&gt;&lt;br /&gt;I am sorry; I forgot to mention that you should define your data type of your column.&lt;br /&gt;&lt;br /&gt;The error message occurs due to you haven’t define the data type or the filter expression doesn’t match with the column’s data type.&lt;br /&gt;&lt;br /&gt;In my sample I have defined the data type:&lt;br /&gt;&lt;/p&gt;&lt;pre&gt;textColumn.Name = textColumn.ColumnName = "Text";textColumn.DataType = "System.String";&lt;/pre&gt;
&lt;p&gt;Regards,&lt;br /&gt;Hans.&lt;br /&gt;&lt;/p&gt;</description></item><item><title>WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><pubDate>Wed, 09 Oct 2013 11:18:16 GMT</pubDate><dc:creator>luwen</dc:creator><category>WebCombo Clientside Events</category><category>FilterExpression</category><description>&lt;p&gt;Thank you Hans for your quick response.&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;I got error message "Invalid filter expressions." when used your code. &amp;nbsp;I tried both "like" and "contains", same message.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;My WebCombo version is 6.0.7200. &amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;Luwen&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;</description></item><item><title>WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><pubDate>Wed, 09 Oct 2013 05:56:51 GMT</pubDate><dc:creator>hans@intersoftpt.com</dc:creator><category>WebCombo Clientside Events</category><category>FilterExpression</category><description>Hello,&lt;br /&gt;&lt;br /&gt;Thank you for the question regarding WebCombo.&lt;br /&gt;&lt;br /&gt;I use WebCombo sample, ClientBinding_ClientAPI.aspx, to find a work around that perhaps you could use.&lt;br /&gt;It seems this sample (ClientBinding_ClientAPI.aspx) similar with your current scenario.&lt;br /&gt;&lt;br /&gt;In that sample I use OnShowDropDown client side to filter the WebCombo’s result box.&lt;br /&gt;Here’s the example snippet code how I filter the result box:&lt;pre&gt;function wcClient_OnShowDropDown(controlId, left, top, width, height) {    var wcClient = ISGetObject("wcClient");
    var dataView = wcClient.GetView();
    if (dataView == null) {
        alert("Data is not created yet!");
        return;
    }
    else {
        if (wcClient.LastQuery != "") {
            wcClient.HideDropDown();
            dataView.Table.UserDefinedRowFilter = "[Text] like '" &amp;#43; wcClient.LastQuery &amp;#43; "%'";
            //Or you can use "[Text] contains '" &amp;#43; wcClient.LastQuery &amp;#43; "'"
            wcClient.RebindData(null, true);
        }
    }
}&lt;/pre&gt;
&lt;p&gt;Please kindly have review on the attached sample to see the result.&lt;br /&gt;&lt;br /&gt;Hope this helps. Thank you.&lt;br /&gt;&lt;br /&gt;Regards,&lt;br /&gt;Hans.&lt;br /&gt;&lt;/p&gt;
</description></item><item><title>WebCombo filter on client</title><link>http://www.intersoftsolutions.com/Community/WebScheduler/WebCombo-filter-on-client/</link><pubDate>Tue, 08 Oct 2013 18:27:28 GMT</pubDate><dc:creator>luwen</dc:creator><category>WebCombo Clientside Events</category><category>FilterExpression</category><description>I used a WebCombo inside a grid. Everything works fine except the speed of loading the options in webcombo is slow when user start to type. &amp;nbsp;Here is the code
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;div&gt;&amp;lt;ISWebCombo:WebCombo ID="WebCombo1" runat="server" OnInitializeDataSource="WebCombo1_InitializeDataSource&lt;span style="font-size: 10pt;"&gt; UseDefaultStyle="True" Width="350px" &amp;gt;      &lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;&amp;lt;LayoutSettings EntryMode="AutoComplete"&amp;gt;&lt;/span&gt;&lt;span style="font-size: 10pt;"&gt; &amp;lt;/LayoutSettings&amp;gt;         &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;lt;/ISWebCombo:WebCombo&amp;gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;So I changed to use JSON and clientBindering.  The problem is that  the options in webcombo are not filtered as they are supposed to when user start typing.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;div&gt;This is the format options in WebCombo. &amp;nbsp;They contains two parts: number and description. F&lt;span style="font-size: 10pt;"&gt;or example: &lt;/span&gt;&lt;/div&gt;&lt;div&gt;1 - U.S. Government Interest Reported as Nonqualified Dividends&lt;/div&gt;&lt;div&gt;2 - U.S. Corporate Dividends from Foreign Source&lt;/div&gt;&lt;div&gt;3 - Foreign Dividends&lt;/div&gt;&lt;div&gt;12 - Partnership Income&lt;/div&gt;&lt;div&gt;123 - Exempt Interest Subject to AMT - Territories&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;What I want is when user types "1", all options starting with "1" are shown, &lt;/div&gt;
&lt;div&gt;&lt;div&gt;1 - U.S. Government Interest Reported as Nonqualified Dividends&lt;/div&gt;&lt;div&gt;12 - Partnership Income&lt;/div&gt;&lt;div&gt;123 - Exempt Interest Subject to AMT - Territories&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;When user types 12, all options starting with "12" are shown&lt;/div&gt;
&lt;div&gt;&lt;div&gt;12 - Partnership Income&lt;/div&gt;&lt;div&gt;123 - Exempt Interest Subject to AMT - Territories&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;124 - xxxx&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;but now it always shows everything in the order of the list without filtering&lt;/div&gt;
&lt;div&gt;&lt;div&gt;1 - U.S. Government Interest Reported as Nonqualified Dividends&lt;/div&gt;&lt;div&gt;2 - U.S. Corporate Dividends from Foreign Source&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;3 - Foreign Dividends&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;My question is &lt;/div&gt;
&lt;div&gt;1. How to apply filter to the webcombo options in javascript ?&lt;/div&gt;
&lt;div&gt;2. If (1) is not applicable, how to speed up the combo options loading?&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;Here is my code.&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;div&gt;&amp;lt;ISWebCombo:WebCombo ID="WebCombo1" runat="server"&amp;nbsp;&lt;span style="font-size: 10pt;"&gt;DataTextField="text" DataValueField="key" BindingOperationMode="ClientBinding" &lt;/span&gt;&lt;span style="font-size: 10pt;"&gt;UseDefaultStyle="True"  &amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;lt;Columns&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;lt;ISWebCombo:WebComboColumn Name="text" BaseFieldName="text" HeaderText="Item Text" Width="350"/&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;lt;/Columns&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;lt;LayoutSettings EntryMode="AutoComplete" &amp;nbsp;ComboMode="SingleColumn" StatusBoxVisible="true" AlwaysShowAllRowsOnDropdown="false" /&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;lt;FlyPostBackSettings PostHiddenFields="true" PostInputControls="true" /&amp;gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;ClientBindingSettings DataSourceType="ClientDataSource" /&amp;gt;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: 10pt;"&gt;&amp;lt;/ISWebCombo:WebCombo&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;    &amp;lt;script type="text/javascript"&amp;gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; function BindWebCombo() { &amp;nbsp;// called when page load&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var combo = ISGetObject("WebCombo1");&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var webComboTable = new ISDataTable();&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var keyColumn = new ISDataColumn(webComboTable);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var textColumn = new ISDataColumn(webComboTable);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; webComboTable.Name = webComboTable.TableName = "TaxCodesDesc ";&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; keyColumn.Name = keyColumn.ColumnName = "key";&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; textColumn.Name = textColumn.ColumnName = "text";&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; webComboTable.Columns.Add(keyColumn);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; webComboTable.Columns.Add(textColumn);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; for (var j = 0; j &amp;lt; retData.TaxCodesDesc.length; j&amp;#43;&amp;#43;) { &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; var dataRow = webComboTable.NewRow();&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dataRow.Cells.GetNamedItem("key").Value = retData.TaxCodesDesc[j].key;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dataRow.Cells.GetNamedItem("text").Value = DecodeXmlText(retData.TaxCodesDesc[j].value);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; webComboTable.Rows.Add(dataRow);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; combo.SetDataSource(webComboTable);&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; combo.DataBind();&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; combo.Render();&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; combo.ShowDropDown();&lt;/div&gt;&lt;div&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;/div&gt;&lt;/div&gt;
&lt;div&gt;&amp;lt;/script&amp;gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;Thanks,&lt;/div&gt;
&lt;div&gt;Luwen&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</description></item></channel></rss>