telerik asp.net控制清除客户端

时间:2009-07-02 13:33:37

标签: asp.net javascript telerik

您好我正在使用asprik的telerik rad控件 我必须用javascript清除输入; 但是telerik控件(例如radcombobox)会生成一个巨大的标记 那么如何清除客户端页面上的telerik控件?

日Thnx

5 个答案:

答案 0 :(得分:1)

我有一个非常简单的工作示例。我希望这会给你一些关于如何进行的想法。我已经为文本框做了一些清理工作。

 <Items>
        <telerik:RadComboBoxItem Text="Oragnes" Value="1" />
 </Items>
 <Items>
        <telerik:RadComboBoxItem Text="Apples" Value="2" />
 </Items>
 <Items>
        <telerik:RadComboBoxItem Text="Bananas" Value="" />
 </Items>

</telerik:RadComboBox>
  &nbsp;
<telerik:RadTextBox ID="rdTextBox" runat="server" ></telerik:RadTextBox>
&nbsp;
<telerik:RadTextBox ID="RadTextBox1" runat="server" ></telerik:RadTextBox>
&nbsp;
<telerik:RadTextBox ID="RadTextBox2" runat="server" ></telerik:RadTextBox>
      <br />
<input type="button" onclick="ClearRadControls()" value="Clear Rad Controls" />

<script language="javascript" type="text/javascript">

function   ClearRadControls()
{
    var radControl1TextBox = document.getElementById("<%=rdTextBox.ClientID  %>" + "_text");
    var RadTextBox1 = document.getElementById("<%=RadTextBox1.ClientID  %>" + "_text");
    var RadTextBox2 = document.getElementById("<%=RadTextBox2.ClientID  %>" + "_text");
    radControl1TextBox.value   = '';
    RadTextBox1.value = "";
    RadTextBox2.value = "";
}

</script>

答案 1 :(得分:1)

telerik在这里提供了一些有用的asp.net radcontrols帮助文档:

http://www.telerik.com/help/aspnet-ajax/introduction.html

回答关于组合框的问题:

使用telerik的$ find函数返回控件的telerik对象。然后,您可以使用内置于控件的客户端功能。

function ClearSelection() {
    var combo = $find("<%= yourCombo.ClientID %>");
    combo.clearSelection(); 
  }

http://www.telerik.com/help/aspnet-ajax/combobox-client-side-radcombobox.html

答案 2 :(得分:0)

这可能是偏离主题,但JS框架Dojo可能会有所帮助。看到我用来取消选中所有复选框的代码。这些控件都是动态生成的。

> // Uncheck the children
>                   dojo.forEach(
>                       dojo.query("input[type='checkbox']",
> subList),
>                       function(checkboxTag) {
>                           checkboxTag.checked = false;
>                       }
>                   );

答案 3 :(得分:0)

我在博客上发现了一个js解决方案..

在示例代码上搜索了RadGrid中的命名“sampleDivInGrid”div项目。

                 function GetServerElement(serverID, tagName) {
                     if (!tagName)
                         tagName = "*"; //* means all elements  
//i give here the Grid clientID which is owner of the control that we search 
                     var grid = document.getElementById("<%=grdItems.ClientID %>");
                     var elements = grid.getElementsByTagName(tagName);
                     for (var i = 0; i < elements.length; i++) {
                         var element = elements[i];
                         if (element.id.indexOf(serverID) >= 0)
                             return element;
                     }
                 }


                 function OnClientIndexChanged(sender, eventArgs) {

                     var itm = GetServerElement("sampleDivInGrid", "div");
                     var item = eventArgs.get_item();
                     var itmTxt = item.get_text();
                     alert(itmTxt);
                 }

答案 4 :(得分:0)

您可以使用telerik的$ find函数返回控件的telerik对象。

<script type="text/javascript">

    function Something() {
        //...
        $find("<%= yourCombo.ClientID %>").clearSelection();
        //... 
    }
</script>

telerik在这里有关于asp.net radcontrols的有用的帮助文档:

http://www.telerik.com/help/aspnet-ajax/introduction.html

http://www.telerik.com/help/aspnet-ajax/combobox-client-side-radcombobox.html