解释一下PostBack是什么?

1、假如是一个webForm.aspx页面中如果你是使用了DropDownList之类的控件。你要区分是页面第一次加载。还是点击了一个按钮之后(postback)提交回了它本身webForm.aspx通过开发者工具可以查看到,当点击一个提交按钮之后是重新发送回了,自己的页面。

2postback提交回来,还有分自动提交。AutoPostBack

3、下面做一个省市连动来演示postback这个用法;

4、、、、、

5代码清单1

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;


namespace Web1.WebFromTest123

{

    public partial class PostBackTest : System.Web.UI.Page

    {

        protected void Page_Load(object sender, EventArgs e)

        {

            //1、首先判断是否是提交提交会来的页面,如果是,就不进行初始化操作

            if (!IsPostBack)

            {

                ListItem Beijing = new ListItem("北京", "bj");//显示的值,,编程中用到的value

                ddlProvince.Items.Add(Beijing);

                ddlProvince.Items.Add(new ListItem("河北", "hb"));

                ddlProvince.Items.Add(new ListItem("河南", "hn"));

                ddlProvince.Items.Add(new ListItem("湖南", "hunan"));

            }
        }

        //2、如果省的下拉列表中的值发生了变化,就会触发postback这个js方法

        protected void ddlProvince_SelectedIndexChanged(object sender, EventArgs e)

        {

            //3、在加载城市之前,把第一次加载的项清除、

            ddlCity.Items.Clear();

            //4、获取当前选择的那个省的value

            string prove = ddlProvince.SelectedValue;

            if (prove == "bj")

            {

                ddlCity.Items.Add(new ListItem("朝阳", "hn"));

                ddlCity.Items.Add(new ListItem("保定", "hn"));

                ddlCity.Items.Add(new ListItem("丰台", "hunan"));

            }

            else if (prove == "hb")

            {

                ddlCity.Items.Add(new ListItem("北京", "hb"));

                ddlCity.Items.Add(new ListItem("石家庄", "hn"));

                ddlCity.Items.Add(new ListItem("唐山", "hunan"));

 

            }

            else if (prove == "hn")

            {

                ddlCity.Items.Add(new ListItem("开封", "hb"));

                ddlCity.Items.Add(new ListItem("郑州", "hn"));

                ddlCity.Items.Add(new ListItem("新乡", "hunan"));

            }

        }

    }

}

 

6、其中需设置省的AutoPostBack为True,这样才会点击省的一个value,才会显示出来,,城市来~@!!

 

7、通过使用PostBack禁止了,达到了只有页面第一次加载的时候才初始化,其他的都不进行初始化操作~!!

 

posted @ 2015-06-08 12:01  t800  阅读(2137)  评论(0编辑  收藏  举报