それはうまくいくはずです。ページにコントロールを配置していることを確認<asp:ScriptManager />
してください (または、Telerik を使用している場合は RadScriptManager、Microsoft の AjaxToolkit を使用している場合は ToolkitScriptManager など)。
EDIT:UpdatePanel
以下は、あなたが言及したBootstrapモーダルダイアログを
使用して正しく動作するコードです:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="bootstrap.aspx.cs" Inherits="TestWeb.bootstrap" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">
<link rel="stylesheet" href="css/bootstrap-theme.min.css">
<script src="Scripts/jquery-1.8.2.js"></script>
<script src="js/bootstrap.min.js"></script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<a data-toggle="modal" href="#myModal" class="btn btn-primary btn-lg">Launch demo modal</a>
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Modal title</h4>
</div>
<div class="modal-body">
<asp:UpdatePanel ID="upd" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:PlaceHolder id="p1" runat="server">
<asp:Literal id="lit1" runat="server" Text="Placeholder 1" />
</asp:PlaceHolder>
<asp:PlaceHolder id="p2" runat="server" visible="false">
<asp:Literal id="lit2" runat="server" Text="Placeholder 2" />
</asp:PlaceHolder>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btn" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<asp:Button ID="btn" runat="server" CssClass="btn btn-primary" Text="Save" OnClick="btn_Click" />
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->
</form>
</body>
</html>
コード ビハインドでは次のようになります。
protected void btn_Click(object sender, EventArgs e)
{
this.p1.Visible = false;
this.p2.Visible = true;
}
このマークアップだけを使用してアプリにテスト ページを作成し、環境で動作することを確認することをお勧めします。そうであると仮定すると、問題のあるコードを取り出して、断片を引き出し始めます。Placeholder
いくつかのスタイル付き div とLiteral
リソース ファイルからテキストを取得する代わりに、同じプレーン テキストを 2 番目のコントロールに配置することもできます。データ更新コードをコメントアウトして、[保存] ボタンが 2 つのPlaceholder
コントロールの表示を切り替えるだけになるようにします。ページを最小限に抑えた後もまだ機能しない場合は、さらにコードを投稿してください。もう一度見てみましょう.