### JS弹出对话框返回值代码(ASP.NET后台) #### 概述 本文将详细介绍一个在ASP.NET项目中实现JS弹出对话框并获取返回值的示例。此功能主要用于在用户选择某些数据后,能够将这些数据传递回原页面进行进一步处理。这种交互方式在很多场景下都非常实用,比如在员工管理系统中选择员工信息、产品系统中选择产品类别等。 #### 示例分析 本案例主要包括三个部分:`Default.aspx` 页面、`Default.aspx.cs` 后台代码以及 `WebDialog.aspx` 弹出对话框页面。接下来,我们将逐一分析这三个部分的具体实现。 ### 1. Default.aspx 页面 ```html <script type="text/javascript"> function GetUser(TxtEmpID, TxtEmpName, url) { var properties = 'status:no;resizable:no;toolbar:no;menubar:no;location:no;scroll:no;dialogWidth:540px;dialogHeight:450px;'; var arg = window.showModalDialog(url, "", properties); if (arg != null) { document.getElementById(TxtEmpID).value = arg[0]; document.getElementById(TxtEmpName).value = arg[1]; } } </script> ``` 这段代码定义了一个 JavaScript 函数 `GetUser`,该函数接受三个参数: - `TxtEmpID`: 接收员工ID的文本框ID。 - `TxtEmpName`: 接收员工名称的文本框ID。 - `url`: 需要打开的弹出对话框页面的URL。 该函数的作用是打开一个指定URL的模态对话框,并设置其属性(如宽度、高度等)。如果用户在对话框中点击了“确定”按钮,则会将对话框返回的数据分别赋值给 `TxtEmpID` 和 `TxtEmpName` 这两个文本框。 ### 2. Default.aspx.cs 后台代码 ```csharp protected void Page_Load(object sender, EventArgs e) { TextBox1.Attributes.Add("onclick", "GetUser('" + this.TextBox1.ClientID + "','" + this.TextBox2.ClientID + "','WebDialog.aspx')"); } ``` 这部分是 ASP.NET 的后台 C# 代码。在页面加载时触发 `Page_Load` 方法,在这里我们为 `TextBox1` 添加了一个 `onclick` 事件。当用户点击这个文本框时,将调用前面定义的 `GetUser` 函数,并传入当前文本框及其旁边文本框的客户端ID,以及弹出对话框的 URL。 ### 3. WebDialog.aspx 弹出对话框页面 ```html <script language="javascript" type="text/javascript"> function Submit() { var arr = new Array(); arr[0] = document.getElementById('TxtEmpID').value; arr[1] = document.getElementById('TxtEmpCName').value; arr[2] = document.getElementById('TxtTitleID').value; window.returnValue = arr; window.close(); } </script> ``` 这部分代码定义了一个简单的 HTML 表单和一个 JavaScript 函数 `Submit`。当用户填写完表单信息后点击“提交”按钮,就会执行 `Submit` 函数。该函数创建一个数组,依次存储员工ID、员工名称和职位ID,然后将其作为返回值通过 `window.returnValue` 设置,并关闭当前窗口。 ### 总结 本案例通过一个简单的例子展示了如何在 ASP.NET 项目中使用 JavaScript 实现弹出对话框的功能,并且能够将用户在对话框中的选择结果返回到原页面。这种方式不仅提高了用户体验,也使得页面之间的数据交互更加灵活方便。在实际开发中,可以根据具体需求对这些代码进行适当修改和扩展,以满足更复杂的应用场景。
- 粉丝: 6
- 资源: 986
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 学校课程软件工程常见10道题目以及答案demo
- javaweb新手开发中常见的目录结构讲解
- 新手小白的git使用的手册入门学习demo
- 基于Java观察者模式的info-express多对多广播通信框架设计源码
- 利用python爬取豆瓣电影评分简单案例demo
- 机器人开发中常见的几道问题以及答案demo
- 基于SpringBoot和layuimini的简洁美观后台权限管理系统设计源码
- 实验报告五六代码.zip
- hdw-dubbo-ui基于vue、element-ui构建开发,实现后台管理前端功能.zip
- (Grafana + Zabbix + ASP.NET Core 2.1 + ECharts + Dapper + Swagger + layuiAdmin)基于角色授权的权限体系.zip