我为RadComboBox创建了UserControl。我正在尝试使用Javascript在我的.aspx页面上设置其值。我得到组合为null。如何访问用户控件内部的控件?感谢您的任何建议。
<script type="text/javascript">
combo = $find("<%= RadComboBox1.ClientID %>");
combo.SetValue(MyArgs[2]);
</script>
答案 0 :(得分:3)
如果我错了,有人会纠正我,但我不相信你可以在JS脚本标签中使用服务器端脚本。
您可以使用和asp Literal将客户端ID传递给隐藏字段。 Jor例子:
在您的aspx页面上放置一个名为fieldID的ASP Literal
将值设置为
"<input type=\"hidden\" id=\"theID\" value=\""+RadComboBox1.ClientID+"\"/>"
然后你的JS组合将等于$('#'+$('#theID').val());
答案 1 :(得分:1)
来自Telerik文档
http://www.telerik.com/help/aspnet/combobox/combo_client_model.html
function SetValueOfTheComboBox()
{
var combo = <%=RadComboBox1.ClientID %>;
combo.SetValue("CustomText");
}
我认为你不需要$ find()。
我没有测试过,你的里程可能会有所不同。
答案 2 :(得分:0)
如果您正在使用RadComboBox for ASP.NET AJAX,那么以下代码应该可以工作:
function FunctionName(parameter)
{
var combo = $find("<$= RadComboBox1.ClientID %>");
combo.set_value(parameter);
}
SetValue()方法适用于ASP.NET Classic控件,因此如果您使用的是ASP.NET AJAX,则需要使用可以找到here的新客户端API。另请注意,您应该在“combo”初始化之前编写var
。