JavaScript制作弹出层效果


Posted in Javascript onDecember 02, 2016

先给大家展示下效果图,效果图如下所示:

JavaScript制作弹出层效果

1.引用相关easyui.min.js,easyui-lang-zh_CN.js 等js 文件;

2.前台代码

<input type="text" id="txt_Type" style="display:none" />
<div class="macFormItem" id="divSQXLH" runat="server">
<label>
售前支持序列号</label>
<div class="FormItemElement">
<input id="txt_SQXLH" class="txt" type="text" style ="width:300px" readonly="readonly" />
<input id="btn_selectSQXLH" type="button" value="选择序列号" style="margin-left: 5px; width: 90px" class="btn" />
</div>
</div>
<%-- 弹出层--%>
<div id="menuContainer" style="position: absolute; background-color: white; border: 1px solid #cccccc; width: 306px; display: none;">
<div style="font-size: 12px;">
 序列号:
<input id="txt_Name" type="text" />
<input id="btn_Search" type="button" style="margin: 10px 10px 10px 10px;" value="搜索" class="btn" />
</div>
<div id="tt">
</div>
<input id="btn_selectOk" type="button" value="确认" style="margin: 10px 10px 10px 10px;" class="btn" />
<input id="btn_selectCancle" type="button" value="关闭" class="btn" />
</div>

3.js 代码

<script type="text/javascript">
//设置层
function getLeft(obj) {
if (obj == undefined) return 0;
if (obj.parentNode == undefined) return obj.offsetLeft;
if (obj.tagName.toLowerCase() == "html") return 0;
return obj.offsetLeft + getLeft(obj.parentNode);
}
function getTop(obj) {
if (obj == undefined) return 0;
if (obj.parentNode == undefined) return obj.offsetTop;
if (obj.tagName.toLowerCase() == "html") return 0;
return obj.offsetTop + getTop(obj.parentNode);
}
// 选择售前序列号
$("#btn_selectSQXLH").click(function () {
$("#menuContainer").css("display", "");
var proName = $("#txt_SQXLH");
$("#menuContainer").css("left", (proName.position() || { "left": NaN }).left);
$("#menuContainer").css("top", (proName.position() || { "top": NaN }).top + proName.height());
$("#txt_Type").val('1');
getCustomerInfo();
});
// 选择项目编号
$("#btn_selectProNum").click(function () {
$("#menuContainer").css("display", "");
var proName = $("#txt_ProNum");
$("#menuContainer").css("left", (proName.position() || { "left": NaN }).left);
$("#menuContainer").css("top", (proName.position() || { "top": NaN }).top + proName.height());
$("#txt_Type").val('2');
getCustomerInfo();
});
// 选择报修编号
$("#btn_selectBXNum").click(function () {
$("#menuContainer").css("display", "");
var proName = $("#txt_BXNum");
$("#menuContainer").css("left", (proName.position() || { "left": NaN }).left);
$("#menuContainer").css("top", (proName.position() || { "top": NaN }).top + proName.height());
$("#txt_Type").val('3');
getCustomerInfo();
});
function getCustomerInfo() {
$('#tt').datagrid({
iconCls: 'icon-edit',
toolbar: "#tb",
pagination: true,
singleSelect: true,
fitColumns: true,
url: "../Admin/Ashx/UpdateProManagerHandler.ashx?Method=GetPageDataByProName", --获取数据信息
columns: [[
{ field: 'FNumber', title: '项目编号', width: 150, align: 'center' },
{ field: 'FName', title: '项目名称', width: 150, align: 'center' }
]],
onLoadError: function (msg) {
alert(window.console.info(msg.responseText));
}
});
}
//查询客户信息
$("#btn_Search").click(function () {
var params = $('#tt').datagrid('options').queryParams;
params.proName = $("#txt_Name").val();
$('#tt').datagrid('load');
});
//确认按钮选择
$("#btn_selectOk").click(function () {
var row = $('#tt').datagrid('getSelected');
if (row) {
Clear();
if ($("#txt_Type").val() == "1")
{
$("#txt_SQXLH").val(row.FName);
$("#txt_CustName").val(row.FName);
$("#txt_SalerEmp").val(row.FName);
}
if ($("#txt_Type").val() == "2")
{
$("#txt_ProNum").val(row.FName);
$("#txt_CustName").val(row.FName);
$("#txt_ProName").val(row.FName);
}
if ($("#txt_Type").val() == "3") {
$("#txt_BXNum").val(row.FName);
$("#txt_CustName").val(row.FName);
}
}
$("#menuContainer").css("display", "none");
});
//datagrid 的双击事件
$('#tt').datagrid({
onDblClickRow: function (rowIndex, rowData) {
Clear();
if (rowData) {
if ($("#txt_Type").val() == "1") {
$("#txt_SQXLH").val(rowData.FName);
$("#txt_CustName").val(rowData.FName);
$("#txt_SalerEmp").val(rowData.FName);
}
if ($("#txt_Type").val() == "2") {
$("#txt_ProNum").val(rowData.FName);
$("#txt_CustName").val(rowData.FName);
$("#txt_ProName").val(rowData.FName);
}
if ($("#txt_Type").val() == "3") {
$("#txt_BXNum").val(rowData.FName);
$("#txt_CustName").val(rowData.FName);
}
}
$("#menuContainer").css("display", "none");
}
});
// 取消
$("#btn_selectCancle").click(function () {
$("#menuContainer").css("display", "none");
});
//清空文本信息
function Clear()
{
$("#txt_SQXLH").val('');
$("#txt_ProNum").val('');
$("#txt_BXNum").val('');
$("#txt_CustName").val('');
$("#txt_SalerEmp").val('');
$("#txt_ProName").val('');
}
</script>

4.选择信息时,可双击 也可单击点确认。

以上所述是小编给大家介绍的JavaScript制作弹出层效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 事件处理程序介绍
Jun 27 Javascript
Javascript对象属性方法汇总
Nov 21 Javascript
JavaScript版的TwoQueues缓存模型
Dec 29 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
Mar 04 Javascript
详解JavaScript的AngularJS框架中的作用域与数据绑定
Mar 04 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
Mar 24 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
Oct 30 Javascript
分享一道关于闭包、bind和this的面试题
Feb 20 Javascript
Vue引入sass并配置全局变量的方法
Jun 27 Javascript
vue项目打包后上传至GitHub并实现github-pages的预览
May 06 Javascript
微信小程序 自定义复选框实现代码实例
Sep 04 Javascript
解决Layui中templet中a的onclick参数传递的问题
Sep 20 Javascript
Javascript之面向对象--方法
Dec 02 #Javascript
详解基于javascript实现的苹果系统底部菜单
Dec 02 #Javascript
Vue.js组件tree实现省市多级联动
Dec 02 #Javascript
Vue2实现组件props双向绑定
Dec 02 #Javascript
关于Vue.js一些问题和思考学习笔记(2)
Dec 02 #Javascript
基于jQuery实现表格的排序
Dec 02 #Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(放大缩小)
Dec 02 #Javascript
You might like
php 动态执行带有参数的类方法
2009/04/10 PHP
php异常处理技术,顶级异常处理器
2012/06/13 PHP
PHP读MYSQL中文乱码的快速解决方法
2016/10/01 PHP
javascript在一段文字中的光标处插入其他文字
2007/08/26 Javascript
javascript全局变量封装模块实现代码
2012/11/28 Javascript
利用了jquery的ajax实现二级联互动菜单
2013/12/02 Javascript
用js传递value默认值的示例代码
2014/09/11 Javascript
javascript制作坦克大战全纪录(2)
2014/11/27 Javascript
Jquery对select的增、删、改、查操作
2015/02/06 Javascript
jQuery统计指定子元素数量的方法
2015/03/17 Javascript
jquery+css3实现会动的小圆圈效果
2016/01/27 Javascript
原生态js,鼠标按下后,经过了那些单元格的简单实例
2016/08/11 Javascript
jQuery弹出遮罩层效果完整示例
2016/09/13 Javascript
Angularjs使用过滤器完成排序功能
2017/09/20 Javascript
Angular2+如何去除url中的#号详解
2017/12/20 Javascript
对Angular中单向数据流的深入理解
2018/03/31 Javascript
js实现弹幕墙效果
2020/12/10 Javascript
python定向爬虫校园论坛帖子信息
2018/07/23 Python
使用python根据端口号关闭进程的方法
2018/11/06 Python
对python插入数据库和生成插入sql的示例讲解
2018/11/14 Python
python下载微信公众号相关文章
2019/02/26 Python
python傅里叶变换FFT绘制频谱图
2019/07/19 Python
使用python绘制温度变化雷达图
2019/10/18 Python
在jupyter notebook中调用.ipynb文件方式
2020/04/14 Python
详解Python yaml模块
2020/09/23 Python
Django xadmin安装及使用详解
2020/10/26 Python
解决pycharm导入numpy包的和使用时报错:RuntimeError: The current Numpy installation (‘D:\\python3.6\\lib\\site-packa的问题
2020/12/08 Python
HTML5地理定位与第三方工具百度地图的应用
2016/11/17 HTML / CSS
C#如何调用Word并打开一个Word文档
2013/05/08 面试题
啤酒销售实习自我鉴定
2013/09/24 职场文书
电子商务专业毕业生自荐书
2014/06/22 职场文书
工作业绩不及格检讨书
2014/10/28 职场文书
Python编写可视化界面的全过程(Python+PyCharm+PyQt)
2021/05/17 Python
Java集成swagger文档组件
2021/06/28 Java/Android
如何vue使用el-table遍历循环表头和表体数据
2022/04/26 Vue.js
nginx访问报403错误的几种情况详解
2022/07/23 Servers