2013-06-07 6 views
0

У меня есть один вопрос, и я стараюсь искать на форумах, но я не могу показать, что это хорошо подходит. У меня есть простой веб-сайт, используя мастер-страницу, все работает отлично, я даже поместил навигационную панель и прекрасно работает :)asp.net главная страница и javascript

Но я пытаюсь изменить свой maincontentplaceholder с помощью javascript, я пытаюсь с 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> 

В одном из этих контейнеров у меня есть файл .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"; 
} 

Я знаю, что это своего рода грязный :( возможно ли это?

Надежда кто-то может сказать мне, что есть способ :)

+0

'я пытаюсь изменить свою maincontentplaceholder с помощью javascript' - JavaScript имеет нет понятия «ContentPlaceHolder». Это серверные компоненты и полностью обрабатываются и заменяются разметкой HTML перед отправкой в ​​браузер. JavaScript может заменить содержимое любого из HTML-элементов на стороне клиента, но он не может напрямую взаимодействовать с элементами управления на сервере. Кроме того, 'Response.Redirect()' не может быть вызван в JavaScript. Это серверная функция. Помимо этого, мне не совсем ясно, что вы пытаетесь сделать. Можете ли вы уточнить, может быть, с примером? – David

+0

Прежде всего, для подсказки, я понимаю, что вы говорите :) Но позвольте мне попытаться объяснить, чего я хочу. У меня есть интро-анимация, которая создается с помощью css3. Это моя первая страница, страница по умолчанию. В конце анимации у меня есть несколько кнопок, которые я хочу использовать для навигации по разным страницам. Я начинаю использовать главную страницу, поэтому я могу держать верхнюю панель на всем узле, который также имеет некоторые ссылки, но они работают нормально. – Yerathel

ответ

Смежные вопросы