网站前端-js知识

登录: params的声明,post请求(ajax)

function doLogin(){
	var params={
		username:$("#usernameId").val(),
		password:$("#passwordId").val()
	}
	var url="user/login";
	// console.log("params",params);
	$.post(url,params,function(result){
		if(result.state==20){
			alert("登录成功!");
			location.href="/"; //自动跳转首页
		}else{
			// 显示错误提示信息
			$(".login-box-msg").html(result.message); 
		}
		return false;//防止刷新时重复提交
	});
}

load方法: 只传一个参数(url)

	// 页面加载完毕后,自动为日志管理按钮添加点击事件
	$(function(){
		setClick("load-log-id","sys/log_list");
		setClick("load-menu-id","sys/menu_list");
		setClick("load-role-id","sys/role_list");
		setClick("load-user-id","sys/user_list");
	});
	
	function setClick(id,url){
		$("#"+id).click(function(){
			// 发送AJAX请求,获取日志管理子页面
			// 收到响应后,会自动加载页面到mainContentId的内部
			$("#mainContentId").load(url);
		});
	}

load方法: 传两个参数,第一个执行成功后,调用第二个参数(方法)

// 页面加载完成后,发送AJAX请求
$(function(){
	$(".btn-search").click(queryData);
	
	// 请求page.html的内容并显示
	var page_url="common/page";
	// 将findPageRecords作为当前AJAX的回调函数
	$("#pageId").load(page_url,queryData);
	
	// 为添加按钮设置点击事件
	$(".btn-add").click(function(){
		var url="sys/user_edit";
		$("#mainContentId").load(url);
	});
});

按钮绑定点击事件,get请求(ajax)

	// 页面就绪事件
	$(function(){
		// 为上级菜单的输入框添加点击事件
		$("#parentId").click(doLoadZtreeNodes);
		// 上级菜单列表中的按钮的点击事件
		$("#menuLayer")
		  .on("click",".btn-confirm",doSetSelectedNode)
		  .on("click",".btn-cancel",doHideZtree);
		
		//菜单表单下方按钮的点击事件
		$(".box-footer")
		.on("click",".btn-cancel",doCancel)
		.on("click",".btn-save",doSaveOrUpdate)
		
		var menuId=$("#mainContentId").data("updateMenuId");
		if(menuId!=undefined){
			// 发送AJAX请求
			var url="menu/findSysMenuById";
			var params={"menuId":menuId};
			$.getJSON(url,params,function(result){
				if(result.state==20){// 正常响应
					var rowData=result.data;
					doInitEditFormData(rowData);
				}else{
					alert(result.message);
				}
			});
		}
	});

为4个按钮添加点击事件

$(function(){
    // 为4个按钮添加点击事件
    $(".first,.pre,.next,.last").click(updatePageRecords);
})

prop方法(拿取或者设置属性),data方法(绑定或者拿取值)

js语法允许动态的为一个对象绑定属性和值,在后续的程序运行中,可以直接访问该对象的指定属性的值。

$("选择器").data("属性名",属性值);// 为对象动态添加属性和值
var value=$("选择器").data("属性名");// 获取该对象指定属性的值
	function doInitEditFormData(rowData){
		$("input[value="+rowData.type+"]").prop("checked",true);
		$("#nameId").val(rowData.name);  
		$("#sortId").val(rowData.sort);  
		$("#permissionId").val(rowData.permission);  
		$("#urlId").val(rowData.url);  
		$("#parentId").val(rowData.parentName);  
		$("#parentId").data("parentId",rowData.parentId);
	 }

each方法

	function checkAll(){
		// 获取全选按钮当前的状态
		var flag=$("#checkAll").prop("checked");
		
		// 设置列表中所有checkbox的状态
		$("#tbodyId input[type=checkbox]").each(function(){
			$(this).prop("checked",flag);
		});
	}

数组的push方法,以及往params里面通过toString方法设置该数组的值

function doGetEditFormData(){
	//获取用户输入的数据
	var params={
		username:$("#usernameId").val(),
		password:$("#passwordId").val(),
		email:$("#emailId").val(),
		mobile:$("#phoneId").val(),
		deptId:$("#deptId").data("deptId")
	}
	//获取选择的角色
	var roleIds=new Array();
	$("#rolesId input[name='roleId']").each(function(){
		if($(this).prop("checked")){
			roleIds.push($(this).val());
		}
 	});
	params.roleIds=roleIds.toString();
	return params;
}

array.length方法: 数组的长度

function deleteRecord(){
    // 获取页面中所有被勾选的checkBox的value:array
    var array=[];// 保存id的数组,默认为空
    // 遍历页面中所有的checkBox
    $("#tbodyId input[type=checkbox]").each(function(){
        // 如果被勾选
        // <input type="checkbox" checked="true">
        if($(this).prop("checked")){
            // 将checkBox的value添加到array中
            array.push($(this).val());          
        }
    });

    // 判断array的长度是否为0
    if(array.length==0){
        // 是:弹出错误提示信息 return;
        alert("请至少选择1条记录");
        return;
    }

    var del_log_url="log/delete";
    var params={
            "ids":array.toString() // [12,13,14] -> "12,13,14"
    }
    // 发送AJAX请求给服务器,执行删除操作
    $.post(del_log_url,params,function(result){
        // 判断result.state的值是否为20
        if(result.state==20){
            // 是:提示删除成功,并且更新日志列表
            alert("删除成功!");
            queryData();
        }else{
            // 否:提示服务器返回的错误信息
            alert(result.message);              
        }
    });
}

switch-case: 可以使用字符串形式

// 为4个分页工具按钮添加的点击事件的处理逻辑
function updatePageRecords(){
    // 获取当前的pageCurrent的值-从#pageId对象上获取
    var pageCurrent=$("#pageId").data("pageCurrent");
    var pageCount=$("#pageId").data("pageCount");

    // 获取当前按的是哪个按钮   this-代表当前方法调用者
    var classValue=$(this).prop("class");
    // 根据不同按钮执行不同的逻辑
    switch(classValue){
    case "first":
            if(pageCurrent==1) return;
            else pageCurrent=1;
        break;
    case "pre":
            if(pageCurrent==1) return;
            else pageCurrent--;
        break;
    case "next":
            if(pageCurrent==pageCount) return;
            else pageCurrent++;
        break;
    case "last":
            if(pageCurrent==pageCount) return;
            else pageCurrent=pageCount;
        break;
    }
    findPageRecords(pageCurrent);
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值