0

Я хочу получить доступ к элементу управления контентом Ajax на главной странице, а также с помощью Javascript.Контроль доступа к странице содержимого с главной страницы с помощью javascript

Я пробовал то же самое с помощью владельца содержимого содержимого страницы контента, но также одна из проблем, которую я получаю, составляет около 10 страниц контента, поэтому, когда открывается какая-то другая страница, например страница 1, объект show code Исключение ссылки в качестве владельца содержимого не сопоставляется.

Как получить, какая страница контента открыта? Также я не могу заставить код работать, чтобы получить идентификатор maincontentplaceholder на главной странице.

То, что я сделал до сих пор:

function accessControlContentPage() { 
var txtCont = document.getElementById("Page.Master.FindControl('ContentPlaceHolder1').FindControl('txtContent')").value; 
var text=txtCont; 
} 

Но это не работает. Любая помощь с тем же?

+0

является этим вопросом еще жив ?! – deostroll

+0

Вы всегда можете ответить, чтобы кто-то мог кому-то помочь. :) –

+0

Как только отклика будет выдана клиенту, его не рекомендуется думать с точки зрения мастер-страниц и страниц контента. Это единая веб-страница. – deostroll

ответ

0

Предлагаемый подход заключается в добавлении элементов управления содержимым конкретного контента для таких сценариев, которые должны быть размещены на веб-странице, которую вы выполняете. Посмотрите на следующую страницу мастера/содержание разметке:

Мастер-страница:

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site1.master.cs" Inherits="WebApp.PageMethods.Site1" %> 

<!DOCTYPE html> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
    <asp:ContentPlaceHolder ID="head" runat="server"> 
    </asp:ContentPlaceHolder> 
</head> 
<body> 
    <form id="form1" runat="server"> 
    <div> 
     <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">   
     </asp:ContentPlaceHolder> 
    </div> 
    </form> 
</body> 
</html> 

Существует содержание место держатель head, в котором я должен написать некоторые JS функции пытается получить доступ к раскрывающийся список в другое содержимое место хранения ContentPlaceHolder1.

Содержимое страницы разметки:

<%@ Page Title="" Language="C#" MasterPageFile="~/Site1.Master" AutoEventWireup="true" CodeBehind="WebForm3.aspx.cs" Inherits="WebApp.PageMethods.WebForm3" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 
    <script> 
     function foo() { 
      var ddl = document.getElementById('<%= DropDownList1.ClientID %>'); 
     } 
    </script> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> 
    <asp:DropDownList ID="DropDownList1" runat="server"></asp:DropDownList> 
</asp:Content> 

Здесь я не придется беспокоиться так много о попытке доступа к элементам управления вложенными в ContentPlaceHolderID.

С другой стороны, если у вас нет этой опции/свободы, вы всегда можете написать что-то, как следует в своей самой главной странице:

var d = document.getElementById('<%= this.ContentPlaceHolder1.FindControl("DropDownList1").ClientID %>'); 
+0

«ASP.site_master» не содержит определения для «ContentPlaceHolder1», и не существует метода расширения «ContentPlaceHolder1», принимающего первый аргумент типа «ASP.site_master». –

+0

Это всегда приходило, и именно поэтому этот способ все еще не работает , :( –

+0

Это должно было быть упомянуто в сообщении. Можете ли вы заглянуть в файл designer.cs главной страницы и проверить, существует ли ContentPlaceHolder1? – deostroll

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

  • Нет связанных вопросов^_^