一个js编写全选、弹出对话框、ajax-json的案例

js功能有:全选、弹出对话框、使用json传输ajax数据;不想在写多余的文字了,直接上代码:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>yk test</title>
<link rel="stylesheet" type="text/css" href="http://www.huimg.cn/app/baikesurvey/css/baikeSurveyCSS.css" />
<script type="text/javascript" src="http://www.huimg.cn/lib/jquery-1.7.min.js"></script>
<script src="http://www.huimg.cn/lib/jquery.dialog-0.8.min.js?

10131624" type="text/javascript"></script>
<script src="/admin/js/weiboWidget.js" type="text/javascript"></script>
</head>
<body>
	<h3 style="text-align: center;">test操作</h3>
	<div class="search-s">
		<form action="/weiboWidget.do?action=show" method="post">
			名称:<input type="text" name="docTitle" id="docTitle" value="${docTitle }" />    UID:<input type="text" name="uid" id="uid" value="${uid }" />    <input type="submit" class="btn-b" value="查询" />    <input type="button" class="btn-b" value="重置"
				onclick="resetData()" />
		</form>
	</div>

	   
	<b>信息列表</b>   
	<input type="button" class="btn-b" value="删除" onclick="deleteData()" />   
	<input type="button" class="btn-b" value="加入" onclick="openAddWin()" />
	</br>
	</br>
	<div class="slist">
		<table>
			<tr>
				<th width="80" align="center"><input type="checkbox" id="checkAll" onclick="selectAll()" /> <b>全选</b></th>
				<th width="100" align="center">词条名</th>
				<th width="100" align="center">UID</th>
				<th width="140" align="center">操作</th>
			</tr>
			<c:if test="${count > 0 }">
				<c:forEach var="model" items="${weibos}">
					<tr>
						<td bgcolor="#ffffff" align="center"><input type="checkbox" name="id_list" value="${model.ID };${model.OBJECT_ID }" /></td>
						<td align="center"><a href="http://www.baike.com/wiki/${model.OBJECT_ID }" target="_blank">${model.OBJECT_ID }</a></td>
						<td align="center">${model.PARAM_VALUE}</td>
						<td align="center"><a href="#" onclick="javascript:openEditWin('${model.ID}');">编辑</a>
						</td>
					</tr>
				</c:forEach>
			</c:if>
			<c:if test="${count < 1 }">
				<tr>
					<td align="center" nowrap="nowrap" colspan="11"><font style='font-weight:bolder;' color='red'>暂无相关数据</font></td>
				</tr>
			</c:if>
		</table>
		</br>
		<div class="page-navi">共计 ${count} 条</div>
		<c:if test="${pagePanel != null}">
			<div class="page-navi">${pagePanel}</div>
		</c:if>
	</div>

	<!-- 弹出窗体 -->
	<div class="hudong_dialog bluebox" id="dialog_weibo" style="display: none; position: absolute; z-index: 2030; width: 440px; border: 5px solid rgb(102, 102, 102); left: 270px; top: 131px;">
		<h2 id="win_Title" class="title" style="cursor: move;">加入操作</h2>
		<input id="win_action" type="hidden" name="action" value="add" /> <input id="win_id" type="hidden" name="id" />
		<div class="content" >
			<table  style="height: 150px;border: 0;">
				<tr>
					<td>名称:</td>
					<td><input type="text" id="win_docTitle" name="docTitle" /></td>
				</tr>
				<tr>
					<td>UID:</td>
					<td><input type="text" id="win_uid" name="uid" /></td>
				</tr>
					<tr>
					<td> </td>
				</tr>
			</table>
		</div>
		<div class="button">
			<input type="button" class="ok" name="ok" onclick="save()" value="确定"> <input type="button" class="cancel" name="cancel" onclick="closeWin()" value="取消">
		</div>
		<img class="close" style="" onclick="closeWin()">
	</div>

</body>
</html>
/**
 * 全选
 *
 */
function selectAll() {
	var selectall = document.getElementById("checkAll");
	var checkboxid = document.getElementsByName("id_list");
	if (selectall.checked == true) {
		for ( var i = 0; i < checkboxid.length; i++) {
			checkboxid[i].checked = true;
		}
	} else {
		for ( var i = 0; i < checkboxid.length; i++) {
			checkboxid[i].checked = false;
		}
	}
}

/**
 * 批量删除操作
 *
 */
function deleteData() {
	var idList = document.getElementsByName("id_list");
	var ids = "";
	var docTitles = "";
	// 检查是否选择内容
	for (i = 0; i < idList.length; i++) {
		if (idList[i].checked) {
			var temp = idList[i].value.split(";");
			ids += temp[0] + ",";
			docTitles += temp[1] + ",";
		}
	}
	if (ids == "") {
		alert("请选择纪录!

");
	} else {
		$.post("/weiboWidget.do?

action=delete&" + new Date(), {
			'ids' : ids,
			'docTitles' : docTitles
		}, function(data) {
			window.location.href = "/weiboWidget.do?action=show";
			return false;
		});
	}
}

/**
 * 关闭窗体同一时候清空from表单内容
 */
function closeWin() {
	// 初始化编辑表单
	$("#win_action").val("");
	// 设置编辑ID
	$("#win_id").val("");
	// 设置名称
	$("#win_docTitle").val("");
	// 设置uid
	$("#win_uid").val("");

	$("#dialog_weibo").hide();
}

/**
 * 保存加入或编辑的数据
 */
function save() {
	// 保存前验证
	var docTitle = $("#win_docTitle").val();
	var uid = $("#win_uid").val();
	if (docTitle != "" && uid != "") {
		$.ajax({
			dataType : 'json',
			type : 'POST',
			url : '/weiboWidget.do',
			data : {
				'action' : $("#win_action").val(),
				'id' : $("#win_id").val(),
				'docTitle' : $("#win_docTitle").val(),
				'uid' : $("#win_uid").val(),
			},
			success : function(data) {
				if (data.flag == 1) {
					alert(data.msg);
					window.location.href = "/weiboWidget.do?action=show";
				} else {
					alert(data.msg);
				}
				return false;
			},
			error : function() {
				alert("因为网络问题,保存数据失败。");
				return false;
			}
		});
	} else {
		alert("名称和id不能为空。");
		return false;
	}
}

/**
 * 验证窗体是否已打开
 *
 * @param operType
 * @returns {Boolean}
 */
function checkingIsOpenWin(operType) {
	var deiplay = $("#dialog_weibo").css("display");
	if ("block" == deiplay) {
		if ("addOper" == operType) {
			alert("加入窗体已打开!

");
		} else if ("editOper" == operType) {
			alert("编辑窗体已打开!");
		}
		return false;
	}
	return true;
}

// 打开加入窗体
function openAddWin() {
	if (checkingIsOpenWin("addOper")) {
		$('#win_Title').text('加入');
		$("#win_action").val('add');
		$("#win_docTitle").val("");
		$("#win_uid").val("");
		$("#dialog_weibo").show();
	}
	return false;
}

// 打开编辑窗体
function openEditWin(id) {
	if (checkingIsOpenWin("editOper")) {
		$.ajax({
			dataType : "json",
			type : "POST",
			url : "/weiboWidget.do?

action=ajaxLoadWeibo",
			data : {
				'id' : id
			},
			success : function(data) {
				if (data.flag == 1) {
					// 初始化编辑表单
					$("#win_action").val('modify');
					$('#win_Title').text('编辑');
					$("#win_id").val(data.id);
					$("#win_docTitle").val(data.docTitle);
					$("#win_uid").val(data.uid);
					// 显示编辑窗体
					$("#dialog_weibo").show();
				} else {
					alert(data.msg);
				}
				return false;
			},
			error : function() {
				alert("因为网络问题,临时无法改动操作,请稍后再试。");
				return false;
			}
		});
	}
	return false;
}

/**
 * 重置搜索输入
 */
function resetData() {
	$("#docTitle").val("");
	$("#uid").val("");
}

转载请指明出处:http://blog.csdn.net/yangkai_hudong

时间: 2024-10-19 02:42:53

一个js编写全选、弹出对话框、ajax-json的案例的相关文章

JS编写全选,复选按钮

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>复选</title></head><body>    <input type="button" name="" value="全选" id="one&

JS弹出对话框的三种方式

JS弹出对话框的三种方式 我们用到了alert()方法.prompt()方法.prompt()方法,都是在网页有一个弹出框,那么就让我们探究一下他们之间的区别: 一.第一种:alert()方法 <html> <head> <title>编写html页面</title> <script language="javascript"> //JavaScript脚本标注 alert("15");//在页面上弹出 &

JS弹出对话框的三种实现方式的意义

最近开始学习JavaScript,最开始讲的就是alert().confirm()和prompt()三种JS弹出对话框.三种弹出对话框分别是警告.确认和提示消息. 第一种警告消息框 (alert)     alert 方法有一个参数,即希望对用户显示的文本字符串.该字符串不是 HTML 格式.该消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说,用户必须先关闭该消息框然后才能继续进行操作. <script> alert("Hello

js弹出对话框

<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>js弹出对话框</title> <script language="javascript"> function alter1() {     alert("我敢保证,你现在用的是演示一

js 弹出对话框的方法总结

原文:http://www.cnblogs.com/xiaofengfeng/archive/2012/10/20/2732784.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.o

python selenium 处理JS弹出对话框(六)

在实际系统中,在完成某些操作时会弹出对话框来提示,主要分为"警告消息框","确认消息框","提示消息对话"三种类型的对话框. 1.警告消息框(alert) 警告消息框提供了一个"确定"按钮让用户关闭该消息框,并且该消息框是模式对话框,也就是说用户必须先关闭该消息框然后才能继续进行操作. 2.确认消息框(confirm) 确认消息框向用户提示一个"是与否"问题,用户可以根据选择"确定"按钮

JavaScript中的三种弹出对话框

JavaScript中的三种弹出对话框 *****本文来自互联网****** 学习过js的小伙伴会发现,我们在一些实例中用到了alert()方法.prompt()方法.prompt()方法,他们都是在屏幕上弹出一个对话框,并且在上面显示括号内的内容,使用这种方法使得页面的交互性更精彩,实际上我们经常会在进行网页浏览时简单这种类型的对话框,在用户与应用程序进行双向交流时,经常要用到对话框.avascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prom

[Firefox附加组件]0003.弹出对话框

Firefox中使用面板(panel)模块来显示弹出对话框,面板的内容通过HTML编写.你可以在面板上运行content script,尽管在面板里的脚本无法直接访问插件代码,但是你可以在面板脚本和插件代码间交换信息.这次,我们做了一个会在单击时显示面板的动作按钮.面板上有一个<textarea>元素,用户按下return键时,<textarea>的内容会被发送给插件代码主程序.插件代码主程序会在控制台输出日志. 开发步骤 1.初始化项目,终端窗口运行以下命令. mkdir Dia

MVC4下如何实现模态弹出对话框效果--对话框里可以实现翻页效果(2)

其实上文只是对如何加代码的顺序方法的表述,这里面的代码每个函数是什么意思,要如何理解?需要我们深思. 我们先大框子去理解:我们上文在控制器里只是去HTTPGET了,HTTPget理解其实就是请求.那么我么要保存,要插入的时候要怎么做. 上文在控制器里增加了NEW的动作,当然我们要增加NEW的视图(New.cshtml),视图里面会有一个代码. using(Ajax.BeginForm("New","DataModule",new AjaxOptions{ Inser