嗨,我正在为 asp.net 使用 Telerik rad 控件,我必须使用 javascript 清除输入;但是 Telerik 控件(例如 radcombobox)会生成一个巨大的标记,那么如何清除客户端页面上的 Telerik 控件?
谢谢
嗨,我正在为 asp.net 使用 Telerik rad 控件,我必须使用 javascript 清除输入;但是 Telerik 控件(例如 radcombobox)会生成一个巨大的标记,那么如何清除客户端页面上的 Telerik 控件?
谢谢
我有一个非常简单的工作示例。我希望这会给你一些关于如何进行的想法。我已经为文本框做了一些清理工作。
<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>
<telerik:RadTextBox ID="rdTextBox" runat="server" ></telerik:RadTextBox>
<telerik:RadTextBox ID="RadTextBox1" runat="server" ></telerik:RadTextBox>
<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>
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
我在博客上找到了一个 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);
}
这可能是题外话,但 JS 框架 Dojo 可能会有所帮助。请参阅我用来取消选中所有复选框的这段代码。这些控件都是动态生成的。
> // Uncheck the children
> dojo.forEach(
> dojo.query("input[type='checkbox']",
> subList),
> function(checkboxTag) {
> checkboxTag.checked = false;
> }
> );
您可以使用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