2009-07-02 11 views
0

Salut J'utilise les commandes rad Telerik pour asp.net Je dois effacer les entrées avec javascript; mais les contrôles telerik (radcombobox par exemple) génère un énorme balisage alors comment effacer les contrôles telerik sur une page du côté client?commandes telerik asp.net effacer côté client

thnx

+0

Avez-vous cherché dans la documentation? –

+0

oui mais pas d'échantillon comme la question :( – dankyy1

+0

que voulez-vous dire par "clear" RadComboBox? Il n'est pas rendu comme une entrée –

Répondre

1

J'ai un exemple de travail très simple. J'espère que cela vous donnera quelques idées sur la façon de procéder. J'ai fait un peu de compensation pour les zones de texte.

<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> 
+0

thnx mais, ce n'est pas ce que je cherche ... dans mes pages je génère des radcontrols à la volée et je ne sais pas combien de contrôle rad il a ... j'ai besoin d'un moyen générique clair comme standart html contrôle – dankyy1

0

Cela pourrait être hors sujet, mais le cadre JS Dojo pourrait être utile. Voir ce code que j'utilise pour décocher toutes mes cases à cocher. Ces contrôles sont tous générés à la volée.

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

thnx mais je n'utilise pas Dojo .. dans le projet – dankyy1

0

J'ai trouvé une solution js sur un blog ..

sur le code de l'échantillon avec je cherchai pour nom "sampleDivInGrid" div élément à l'intérieur d'un RadGrid ..

    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); 
       } 
0

telerik a documentation d'aide un peu utile pour les RadControls asp.net ici:

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

Pour répondre à votre question concernant la liste déroulante:

Utilisez la fonction $ find de telerik pour renvoyer l'objet telerik du contrôle. Vous pouvez ensuite utiliser les fonctions côté client intégrées aux contrôles.

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

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

Questions connexes