从 javascript 设置 RadComboBox 值
Posted
技术标签:
【中文标题】从 javascript 设置 RadComboBox 值【英文标题】:Set RadComboBox value from javascript 【发布时间】:2012-07-12 09:54:47 【问题描述】:我在用户控件中有一个 RadCombobox,我试图从 javascript 将值设置为 null 或 0。以下代码不起作用。但它也没有显示任何错误。
function OnClientSelectedIndexChanged(sender, eventArgs)
var item = eventArgs.get_item();
var ddl = document.getElementById('ctl00_plh1_Test1_Dropdown2_RadComboBox1_DropDown');
ddl.selectedIndex = 0;
<telerik:RadComboBox ID="Dropdown1" runat="server"
NoWrap="true" Width="250" OnClientSelectedIndexChanged="OnClientSelectedIndexChanged">
<CollapseAnimation Duration="200" Type="OutQuint" />
</telerik:RadComboBox>
<uc2:RadComboBox ID="Dropdown2" runat="server" DdlAutoWidth="true"></uc2:RadComboBox>
【问题讨论】:
试试这个 var ddl = document.getElementById('maincontent_RadcomboBox'); maincontent 应该是 UserControl 的 ID 我能够使用我的代码找到控件,但 selectedIndex 不起作用。 您的下拉列表不包含任何项目,那么您如何设置它的索引? 【参考方案1】:试试这个。
var mycombobox = $find("<%= MyUserControl.FindControl("RadComboBox1").ClientID %>");
或
var mycombobox = $find("<%= RadComboBox1").ClientID %>");
mycombobox.clearSelection();
你可能需要这个
<rad:RadScriptBlock runat="server" ID="RadCodeBlock">
<script type="text/javascript">
</script>
</rad:RadScriptBlock>
【讨论】:
【参考方案2】:我假设将触发OnClientSelectedIndexChanged
事件的RadComboBox
将具有2 个或更多RadCombBoxItem
s,否则将永远不会触发该事件,因为所选索引永远不会改变。
当事件触发时,您必须在您的UserControl
中获得对RadComboBox
控件的引用。要将其 SelectedIndex 属性设置为 0,请在客户端控件上调用 set_selectedIndex()
函数。请记住,这只会设置 SelectedIndex,不会更新 RadComboBox
的输入字段中的文本。如果你也想清除它,你必须调用客户端控件的set_text()
函数。
function onComboBoxSelectedIndexChanged(s, e)
var ctrl = '<%= Dropdown2.FindControl("RadComboBox1").ClientID %>';
if (ctrl)
ctrl.set_selectedIndex(0);
ctrl.set_text('');
有关 RadCombBox 控件的 JavaScript API 的更多信息,请参阅 Telerik 网站上的 documentation。
【讨论】:
【参考方案3】:试试:
var radComboBox = <%=YourComboBox.ClientID %>;
radComboBox.SetValue("someValue");
【讨论】:
【参考方案4】:您想将所选值或所选索引设置为0
或null
什么?
试试这个选定的值:
$find("<%=ctl00_plh1_Test1_Dropdown2_RadComboBox1_DropDown.ClientID%>").set_text("0");
【讨论】:
【参考方案5】:在 javascript 中为选定的值试试这个:
var SelectdVal=1;
$find("<%= YourRadComboBox.ClientID %>").findItemByValue(SelectdVal).select();
【讨论】:
以上是关于从 javascript 设置 RadComboBox 值的主要内容,如果未能解决你的问题,请参考以下文章