我是telerik控件的新手。
我正在使用以下代码来异步更新控件。
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" DefaultLoadingPanelID = "RadAjaxLoadingPanel1">
<AjaxSettings>
<telerik:AjaxSetting EventName="OnSelectedIndexChanged" AjaxControlID="grd_optnandprcng">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="Req_items"></telerik:AjaxUpdatedControl>
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
正如我的代码所示,我只想更新控件 Req_items (rad gridview)仅 onSelectedIndexChanged 事件 grd_optnandprcng (rad gridview)
但它不起作用。它对radgridview的每个事件进行更新控制。
任何人都有任何想法来解决此问题。 感谢。
答案 0 :(得分:2)
是的,你肯定能做到这一点。试试这个:
在SelectedIndexChanged事件中调用javascript:
<asp:GridView ID="grd_optnandprcng" runat="server" AutoGenerateColumns="False"
OnSelectedIndexChanged="myGrid_SelectedIndexChanged">
从javascript,使用RadAjaxManager发出ajax请求:
function myGrid_SelectedIndexChanged(){
$find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("RefreshReqItems");
}
不要忘记修改RadAjaxManager:
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"
DefaultLoadingPanelID="RadAjaxLoadingPanel1"
OnAjaxRequest="RadAjaxManager1_AjaxRequest">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="Req_items">
</telerik:AjaxUpdatedControl>
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager> >
做任何你需要做的事情来刷新你的物品:
protected void RadAjaxManager1_AjaxRequest(object sender, Telerik.Web.UI.AjaxRequestEventArgs e)
{
if (e.Argument.Equals("RefreshReqItems"))
{
//Refresh something or rebind something else.
}
}