質問が 1 つあり、フォーラムで検索しようとしましたが、これをうまく利用できないようです。私はマスターページを使用したシンプルなWebサイトを持っています.すべてうまくいきます.ナビゲーションバーを置いてもうまくいきます:)
しかし、javascript を使用して maincontentplaceholder を変更しようとしています。location.href と、今のところ __PostBackURL という解決策を試してみましたが、ページが完全に更新され、「マスター ページ」(ヘッダー) が失われました。
私のマスターページ:
<asp:ContentPlaceHolder runat="server" ID="header" >
<table>
<tr>
<td>
<div id="navigation" class="navBarHidden" runat="server">
<img src="images/upperBar.png">
<div class="btns">
<table class="menu">
<tr>
<td style="width:15%"></td>
<asp:Repeater runat="server" ID="Repeater1" DataSourceID="SiteMapDataSource1">
<ItemTemplate>
<td style="width:12%; text-align:center;" >
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>'><%# Eval("Title") %></asp:HyperLink>
</td>
</ItemTemplate>
</asp:Repeater>
<td style="width:15%">
<div id="loginLabel" style="color:white;">
login
</div>
<div id="loginArea" class="loginAreaClosed">
<table>
<tr>
<td>
<input type="text" id="login" class="loginInput"/>
</td>
</tr>
<tr>
<td>
<input type="password" id="password" class="loginInput"/>
</td>
</tr>
<tr>
<td>
<input type="button" value="login"/>
</td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
</div>
</td>
</tr>
</table>
</asp:ContentPlaceHolder>
<div class="content">
<asp:ContentPlaceHolder runat="server" ID="ContentPlaceHolder1" >
</asp:ContentPlaceHolder>
そして、いくつかの container.aspx は今のところ同じです:
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div class="containerAll">
<div class="container">
</div>
</div>
</asp:Content>
このコンテナーの 1 つに、いくつかのものを含む .js ファイルがあります。
document.getElementById("ContentPlaceHolder1_icon1").addEventListener('click', action, false);
function action() {
// i want to change the page seen in the main container inside the master page
// i tried
window.location = 'Response.Redirect("~/events.aspx", false);'
// and this tried
window.location = "newStuff.aspx";
}
私はこれがちょっと厄介であることを知っています:(これは可能ですか?
誰かが私に方法があると教えてくれることを願っています:)