ASP.NET从内容页面更改母版页面用户控件

时间:2012-07-04 05:46:52

标签: asp.net user-controls master-pages

我正在使用VS2010,C#开发我的ASP.NET Web应用程序。我的主页中包含用户控件,现在我要从内容页面访问我的usercontrol,是否可以通过内容页客户端事件更改usercontrol?我要阻止任何回发

我想模拟这样的网站:

http://www.just-eat.co.uk/restaurants-dialacrate-w13/menu

当我的顾客点击食物时,应该将食物添加到我的订单篮中而不进行任何回发,我认为它使用的是JavaScript,对吗?

2 个答案:

答案 0 :(得分:1)

您可以使用此

YouControl uc = (YouControl)Page.Master.FindControl("yourcontrolID");

可以访问放置在母版页中的UC。

并使用webservices / webmethods完成它而不进行任何回发。

有关webservices Go here

的更多信息

有关webmethods Go here

的更多信息

答案 1 :(得分:1)

我说的是您在问题中提供的URL:如果您调查代码,HTML部分中的篮子部分是:

<div id="divBasketHeaderContent">
    <h4>
        <span id="ctl00_DesktopSideColumn_Basket_lblTxt">Your order</span>
    </h4>
</div>

然后,在bundle.js;

function updateBasket(n, t, i) {
    document.getElementById("ctl00_DesktopSideColumn_Basket_modalProductId").value = n;
    var r = n + "#" + t + "#" + i + "#";
    __doPostBack("ctl00_DesktopSideColumn_Basket_UpdatePanel1", r)
}

所以,他正在使用和asp.net updatepanel更新篮子。虽然这很好,但是没有建议,因为在后台,它会发送整个页面并返回大量数据.. See here以查看原因..

同样在我提供的Encosia链接中,您将看到正确完成此操作的方法之一。

您可以使用page methodsweb servicesplain ajaxweb api来满足您的需求。