问个简单的问题:window.showModalDialog返回值

zbdzjx 2015-02-03 05:45:53
aspx页面文件中的部分javascript代码如下:
            var result = window.showModalDialog(openUrl, "newwindow", "height=" + iHeight + ", width=" + iWidth + ", top=" + iTop + ", left=" + iLeft + "");
document.getElementById("txtQyxxID").value = result.split("|||")[0]; //返回值分别赋值给相关文本框
document.getElementById("txtQyxxName").value = result.split("|||")[1];

可以打开一个新窗口,并在里面选择好记录后,返回值也正常传给了txtQyxxID、txtQyxxName。
在aspx页面文件中还有一个“保存”按钮,点“保存”按钮时,在aspx.cs文件中“保存”按钮的OnClick读出来的txtQyxxID、txtQyxxName的值还是原来的值。
请问一下,这是什么原因??要怎么改??

PS:“保存”按钮、txtQyxxID、txtQyxxName都是asp.net的控件。页面的功能就是弹出一个窗口,选一条记录返回ID号和名字,然后点保存就将数据保存到数据库中。
...全文
133 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zbdzjx 2015-02-03
  • 打赏
  • 举报
回复
引用 1 楼 newxdlysk 的回复:
把cs代码贴出来看看呢,我隐隐感觉又是Page_Load的IsPostBack问题
我也猜测是IsPostBack的问题,但不知要怎么改,之前经常写WinForm程序,WEB程序很少写。 代码如下:
        protected void Page_Load(object sender, EventArgs e)
        {
            string s = "";
            string strSQL = "";
            int i = 0;
            OleDbConnection ConnAcc = new OleDbConnection(strConn);
            OleDbCommand cmd;
            OleDbDataReader dr;
            ConnAcc.Open();
            //如果传递参数进来
            if (!IsPostBack)
            {
                btnUpdate.Text = "新增";
                if (!string.IsNullOrEmpty(Request.QueryString["M"]))
                {
                    if (!string.IsNullOrEmpty(Request.QueryString["id"]))
                    {
                        if (Request.QueryString["M"].ToString() == "M")
                        {
                            strSQL = "SELECT * FROM bmxx_view where bmxx_id=" + Request.QueryString["id"].ToString() + " order by bmxx_id";
                            cmd = new OleDbCommand(strSQL, ConnAcc);
                            dr = cmd.ExecuteReader();
                            if (dr.Read())
                            {
                                txtID.Text = dr["bmxx_ID"].ToString();
                                txtName.Text = dr["bmxx_Name"].ToString();
                                taMemo.Text = dr["bmxx_Memo"].ToString();
                                txtQyxxID.Text = dr["qyxx_ID"].ToString();
                                txtQyxxName.Text = dr["qyxx_name"].ToString();
                                btnUpdate.Text = "更新";
                            }
                            dr.Close();
                        }
                        if (Request.QueryString["M"].ToString() == "D")
                        {
                            strSQL = "delete FROM bmxx where bmxx_id=" + Request.QueryString["id"].ToString() + "";
                            cmd = new OleDbCommand(strSQL, ConnAcc);
                            cmd.ExecuteNonQuery();
                        }
                    }
                }
            }
            //生成下面的表格
            strSQL = "SELECT * FROM bmxx_view order by bmxx_id";
            cmd = new OleDbCommand(strSQL, ConnAcc);
            dr = cmd.ExecuteReader();
            s += " <table class='BmxxTableDetail'> ";
            s += " <tr class='BmxxTableDetailTitle'> ";
            s += " <td>ID</td> ";
            s += " <td>企业名称</td> ";
            s += " <td>部门名称</td> ";
            s += " <td>备注</td> ";
            s += " <td>操作</td> ";
            s += " </tr> ";
            s += "  ";
            i = 0;
            while (dr.Read())
            {
                if (i % 2 == 0)
                {
                    s += " <tr class='BmxxTR0'> ";
                }
                else
                {
                    s += " <tr class='BmxxTR1'> ";
                }
                s += " <td> " + dr["Bmxx_ID"].ToString() + "</td>";
                s += " <td> " + dr["Qyxx_Name"].ToString() + "</td>";
                s += " <td> " + dr["Bmxx_Name"].ToString() + "</td>";
                s += " <td> " + dr["Bmxx_Memo"].ToString() + "</td>";
                s += " <td><a href='Bmxx.aspx?M=M&id=" + dr[0].ToString() + "' class='Modify'>修改</a>  <a href='Bmxx.aspx?M=D&id=" + dr[0].ToString() + "' class='Modify' onclick=\"return confirm('确定要删除吗?')\">删除</a></td> ";
                s += " </tr> ";
                i++;
            }
            BmxxDetail.InnerHtml = s;
            dr.Close();
            ConnAcc.Close();
        }
newxdlysk 2015-02-03
  • 打赏
  • 举报
回复
把cs代码贴出来看看呢,我隐隐感觉又是Page_Load的IsPostBack问题

62,052

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧