项目模板中的Telerik ComboBox FindControl

时间:2012-05-15 11:39:48

标签: javascript asp.net telerik telerik-combobox

<Telerik:RadComboBox ID="ddlInvoiceNumber" CssClass="feilds" runat="server" AutoPostBack="false"
    OnClientDropDownClosed="onDropDownClosed" EmptyMessage="-- Select Invoice --"
    LoadingMessage="Please wait" CheckBoxes="true" AppendDataBoundItems="true" SkinID="Windows7"
    Width="450" HighlightTemplatedItems="true">
    <HeaderTemplate>
        <table style="width: 420px;" cellspacing="0" cellpadding="0">
            <tr>
                <td style="width: 180px; float: left">
                    Invoice
                </td>
                <td style="width: 60px; float: left">
                    Value
                </td>
                <td style="width: 60px; float: left">
                    Balance
                </td>
                <td style="width: 60px; float: right">
                    Requested
                </td>
            </tr>
        </table>
    </HeaderTemplate>
    <ItemTemplate>
        <table style="width: 420px;" cellspacing="0" cellpadding="0">
            <tr>
                <td style="width: 180px; float: left" class="smalltext">
                    <%#DataBinder.Eval(Container, "Text")%>
                </td>
                <td style="width: 60px; float: left" class="smalltext">
                    <%#DataBinder.Eval(Container, "Value")%>
                </td>
                <td style="width: 60px; float: left" class="smalltext">
                    <%#Eval("BalanceAmount")%>
                </td>
                <td style="width: 60px; float: right" class="smalltext">
                    <asp:TextBox ID="txtDDLInvoiceAmount" runat="server" Text='<%#Eval("BalanceAmount")%>'
                        Width="58px"></asp:TextBox>
                </td>
            </tr>
        </table>
    </ItemTemplate>
</Telerik:RadComboBox>

onDropDownClosed上的Javascript函数

  function onDropDownClosed(sender, eventArgs) {

      for (var i = 0; i < Length; i++) {
          document.getElementById('<%= lblInvoiceNumberDisplay.ClientID %>').innerHTML += sender.get_checkedItems()[i].get_text() + ", ";
          sum += parseFloat(sender.get_checkedItems()[i].get_value(), 10);

          // Here i want checked textbox values 
      }
  }

请帮忙 - 我如何FindControl客户端ComboBox项目模板中的TextBox?

1 个答案:

答案 0 :(得分:0)

我正在回答我自己的问题

findControl需要控件的ID,但它返回使用该ID找到的客户端对象,例如:在内部它使用$ find()方法来获取javascript对象。隐藏字段没有这样的客户端对象,这就是它无法找到它的原因。 您可以使用此方法来获取DOM元素:

$telerik.findElement(sender.get_items().getItem(0).get_element(), "txtDDLInvoiceAmount").value