首页 新闻 会员 周边

asp.net 如何跳出一个选择性的(是或者否)对话框

0
悬赏园豆:5 [已解决问题] 解决于 2012-11-12 10:41

我写了以下代码,但是不起作用,不知道为什么

public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            HttpPostedFile p;
            if (Request.QueryString["type"] == "true")
            {
                ViewState["a"] = '5';
            }
            if (!Page.IsPostBack)
            {
                System.Data.DataSet ds = new System.Data.DataSet();
                System.Data.DataTable dataTable1 = new System.Data.DataTable("BlogUser");
                System.Data.DataRow dr;
                dataTable1.Columns.Add(new System.Data.DataColumn("UserId", typeof(System.Int32)));
                dataTable1.Columns.Add(new System.Data.DataColumn("UserName", typeof(System.String)));

                for (int i = 0; i < 8; i++)
                {
                    dr = dataTable1.NewRow();
                    dr[0] = i;
                    dr[1] = "【孟子E章】" + i.ToString();
                    dataTable1.Rows.Add(dr);
                }
                ListView1.DataSource = dataTable1;
                ListView1.DataBind();                
            }
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            String UserId = "";
            for (int i = 0; i < ListView1.Items.Count; i++)
            {
                CheckBox chktemp = ListView1.Items[i].FindControl("CheckBox1") as CheckBox;
                if (chktemp != null && chktemp.Checked == true)
                {
                    UserId += ListView1.DataKeys[i].Value + ",";

                }
                if (i == 4)
                {
                    ViewState["a"] = '1';
                    Response.Write("<script>location.href='Default.aspx?type='+confirm('该学生此学科成绩已存在,是否覆盖此成绩?');</script");
                    if (Request.QueryString["type"] == "true")
                    {
                        Response.Write(ViewState["a"].ToString());
                    }
                }
            }
            Page.ClientScript.RegisterStartupScript(Page.GetType(), "x", "alert('有选中 id=" + UserId + "')", true);
        }
      

    }
问题补充:
我这边要做一个人事系统,当发现名字有重复的时候,要问一下输入者,是否还要继续保存
zhengyingcan的主页 zhengyingcan | 初学一级 | 园豆:12
提问于:2012-09-17 19:30
< >
分享
最佳答案
0

同意,建议你使用AJAX去实现,会比较容易些

收获园豆:5
KivenRo | 小虾三级 |园豆:1734 | 2012-09-18 11:22

给个例子吧

zhengyingcan | 园豆:12 (初学一级) | 2012-09-18 11:28

使用Jquery脚本:

$("#Button1").click(function() {
                $.ajax({
                    type: "post",
                    url: "Login.ashx",  //为判断成绩是否存在的一般处理程序
                    data: { //传入参数 【参数名:参数值】 如:

                        par1: “username1”,                       

                        par2: "username2"

                    },
                    success: function(data, status) {
                        var types = data;
                        if (types.toString() == "1" ) {//如返回1时表示成绩存在

                             if(!confirm("该学生此学科成绩已存在,是否覆盖此成绩?"))

                             { return false;  }
                        }
                    }
                  });
            });

KivenRo | 园豆:1734 (小虾三级) | 2012-09-18 11:39

Jquery脚本不懂呀,有没有javascript 的例子呢 @白雲天: 

zhengyingcan | 园豆:12 (初学一级) | 2012-09-18 13:40

有一个更简单的方法,用js/jquery循环进行判断就好

1.通过程序获取该学生已存在成绩的所有学科信息,并将学科编号用分隔符组成一个字段串。

2.在页面中添加一个hid1控件,将上面组成的字段串值赋值给这个hid1的value。

3.在页面中添加一个hid2控件,将该学生选择的学科编号赋值给这个hid2的value.

3.用脚本获取这个hid1控件的value,并通过分隔符进行分隔循环,在循环中和hid2的value判断对比,如果有相同的,则进行提示:confirm("该学生此学科成绩已存在,是否覆盖此成绩?")  ,如果操作值为false,则不执行单击事件中的方法。

定义一个脚本 function Check(){ for(..){if(!confirm(...)){return false;}}} 

在提交控件html代码中加入:OnClick="return Check()"  ,就OK了 

这样应该简单多了吧

KivenRo | 园豆:1734 (小虾三级) | 2012-09-18 13:56

我们是重名,人事资料有好几万数据,没办法在客户端进行比对,一定要通过后台进行比对了 @白雲天: 

zhengyingcan | 园豆:12 (初学一级) | 2012-09-18 16:00

我的邮件是380151700@qq.com,能不能帮忙做一个例子发给我一下,谢谢,万分感谢@白雲天: 

zhengyingcan | 园豆:12 (初学一级) | 2012-09-19 08:49
其他回答(2)
0

请问楼主你这个代码,选择是或者否,有什么区别吗?

chenping2008 | 园豆:9836 (大侠五级) | 2012-09-17 22:00

当用户选择是的时候,就添加, 当用户选择否的时候,就取消任何操作.

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2012-09-18 08:24

@zhengyingcan: 实际上你的代码写的应该是一点效果都没有

支持(0) 反对(0) chenping2008 | 园豆:9836 (大侠五级) | 2012-09-18 09:16
0

winform编程下有对话框,如果是web编程的话,只能借助js来实现 。Jquery中提供了很多对话框,你可以看一下。

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-09-19 10:24

在那里看呢

支持(0) 反对(0) zhengyingcan | 园豆:12 (初学一级) | 2012-09-19 10:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册