さて、RadWindow コントロールに問題があります。
RadWindow の内側にボタンがあります。ボタンは、コード ビハインドのサーバー側イベントに応答する必要があります。このコードをテスト アプリで動作させるところまで行きましたが、実際のアプリケーションでは動作しないようです。
私はいくつかの異なる場所を調べ、学んだことを 使用して機能するテスト アプリを取得しました。しかし、同じコードが私のアプリでは機能しません。私が知ることができる唯一の重要な違いは、スクリプト マネージャーへの参照が別のファイルにあることと、実際のアプリでは .net バージョン 2 を使用しているが、テスト アプリでは 4.0 を使用していることです。ここで何が間違っていますか?
コードビハインド(起動していない)
Protected Sub btnClearFilterValues_OnClick(ByVal sender As Object, ByVal e As EventArgs) Handles btnClearFilterValues.Click
'clears a bunch of values
'this never hits'
End Sub
Protected Sub btnFilterCourses_OnClick(ByVal sender As Object, ByVal e As EventArgs) Handles btnFilterCourses.Click
'Code executes filter'
'this never hits'
End Sub
スクリプトを参照する別のヘッダーには、次のものが含まれます
<telerik:RadScriptManager ID="ScriptManager" runat="server" ScriptMode="Release">
<Scripts>
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js"></asp:ScriptReference>
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js"></asp:ScriptReference>
<asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js"></asp:ScriptReference>
</Scripts>
</telerik:RadScriptManager>
マークアップ
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
</telerik:RadAjaxManager>
<telerik:RadCodeBlock runat="server" ID="rdbScripts">
<script type="text/javascript">
<!--
//-->
//adds jquery to the global or "window" level namespace
window.$ = $telerik.$;
function showDialog() {
var wnd = $find("<%=modalPopup.ClientID %>");
wnd.show();
Sys.Application.remove_load(showDialog);
}
$(document).ready(function () {
$("#btnFilter").click(function (event) {
showDialog();
});
});
</script>
</telerik:RadCodeBlock>
<telerik:RadAjaxPanel runat="server" ID="rapConfiguration" HorizontalAlign="NotSet">
<telerik:RadWindow ID="modalPopup" runat="server" Width="720px" Height="292px" Modal="True" Title="Filter Courses">
<ContentTemplate>
<div>
<asp:Button ID="btnFilterCourses" runat="server" OnClick="btnFilterCourses_OnClick" Style="margin-right: auto; margin-left: 0" Text="Filter Courses" UseSubmitBehavior="False" />
<asp:Button ID="btnClearFilterValues" OnClick="btnClearFilterValues_OnClick" runat="server" Style="margin-right: auto; margin-left: auto;" Text="Clear" UseSubmitBehavior="False" />
</div>
</ContentTemplate>
</telerik:RadWindow>
</telerik:RadAjaxPanel>