I'm adapting the load on demand from web service example. I'm adding an ID property and trying get the current/selected value (not the text!) from the combobox. It doesn't seem to be there.
I've pasted in the code so far. Could someone tell me what I'm doing wrong that the ID never shows up when calling get_value()?
I've pasted in the code so far. Could someone tell me what I'm doing wrong that the ID never shows up when calling get_value()?
using System.Collections;using System.Collections.Generic;using System.Web.Script.Services;using System.Web.Services;using Telerik.Web.UI;[WebService(Namespace = "http://tempuri.org/")][WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)][ScriptService]public class ComboBoxWebService : WebService{ [WebMethod] public IEnumerable GetItems(RadComboBoxContext context) { RadComboBoxData result = new RadComboBoxData(); int numberOfItems = (int)(context["ItemsCount"] ?? 1000); List<ComboBoxItemData> items = new List<ComboBoxItemData>(); for (int i = 0; i < numberOfItems; i++) { ComboBoxItemData itemData = new ComboBoxItemData(); itemData.Text = "Item " + i; itemData.ID = i; items.Add(itemData); } return items; }}public class ComboBoxItemData{ private string text; private int id; public string Text { get { return text; } set { text = value; } } public int ID { get { return id; } set { id = value; } }}<%@ Page Language="C#" AutoEventWireup="true" CodeFile="DefaultCS.aspx.cs" Inherits="DefaultCS" %><%@ Register TagPrefix="telerik" Namespace="Telerik.Web.UI" Assembly="Telerik.Web.UI" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title></head><body> <form id="form1" runat="server"> <div> <label>Number of items to load:</label> <asp:ScriptManager runat="server"></asp:ScriptManager> <telerik:RadNumericTextBox runat="server" ID="ItemsCountTextBox" Width="60" Value="1000" MaxValue="4000" MinValue="100" ShowSpinButtons="True"> <NumberFormat DecimalDigits="0" /> </telerik:RadNumericTextBox> <telerik:RadComboBox runat="server" ID="RadComboBox1" Width="240" Height="200px" DataTextField="Text" DataValueField="id" OnClientItemsRequested="OnClientItemsRequested" OnClientItemsRequesting="OnClientItemsRequesting" AppendDataBoundItems="true" EnableLoadOnDemand="true" EnableItemCaching="true"> <ExpandAnimation Type="none" /> <CollapseAnimation Type="none" /> <WebServiceSettings Path="ComboBoxWebService.asmx" Method="GetItems" /> </telerik:RadComboBox> <telerik:RadScriptBlock runat="Server" ID="RadScriptBlock1"> <script type="text/javascript"> var startTime; var sendRequest = true; var calculate = false; function OnClientItemsRequesting(sender, args) { var input = $find("<%= ItemsCountTextBox.ClientID %>"); args.get_context()["ItemsCount"] = input.get_value(); startTime = new Date(); } function OnClientItemsRequested(sender, args) { var endTime = new Date(); // $get("total").innerHTML = endTime - startTime + "ms"; } function OnClientDropDownClosed(sender, args) { sender.clearItems(); if (args.get_domEvent().stopPropagation) args.get_domEvent().stopPropagation(); } function GetCurrentValue(sender, args) { var combo = $find("<%= RadComboBox1.ClientID %>"); alert(combo.get_value()); } </script> </telerik:RadScriptBlock> <telerik:RadButton ID="btnSelect" runat="server" Text="Select" OnClientClicked="GetCurrentValue"> </telerik:RadButton> </div> </form></body></html>