写在前面:

  在工作中,有时候会遇到一些零零碎碎的小知识点,虽然这些网上都可以查询到,但还是想把一些自己不是很熟悉的当做笔记记录下来,方便以后查询。

1.按钮隐藏/显示/可用/不可用

 $("#nextBtn").css("display","inline");//按钮显示
$("#nextBtn").css("display","none");//按钮隐藏
$("#nextBtn").attr("disabled",false);//按钮可用
$("#nextBtn").attr("disabled",true);//按钮不可用 var btnCss = $("#nextBtn").attr("disabled");//获取按钮某个属性值

2.

  弹出确认框,点击确定,执行logout,取消则不执行

<a href="logout" onclick="return confirm('确定要退出登录吗?');">
退出
</a>

3.

  js中获取java变量值

<script type="text/javascript">

        var errorMsg = '<%=request.getParameter("errorMsg")%>';
if(errorMsg == "null"){
//当没有传递erroeMsg时执行
...
}else{
...
} </script>

对于为什么要用=="null",来判断errorMsg不存在,因为是加了'<%=request.getParameter("errorMsg")%>',单引号,才可以使用,如果不加,则报错。故这里为null用字符串的形式来判断。

4.

  下拉框select某一选项设置为不可选:

方法1:

<select>
<option value="1" >1</option>
<optgroup label="不可选" style=""></optgroup>
<option value="2">2</option>
<option value="3">3</option>
</select>

方法2:

var selectedTo = document.getElementById("dDateTo");
var ops = selectedFrom.options;
//将索引为1的选项禁用掉,option变为不可选
ops[1].disabled = "false";

5.

  window.opener.location.href="/dailyreport/dailyRecordMaintain.jsp?time="+new Date().getTime()+"&oldDate="+pickedDate;

  父窗口带参数刷新

6.

  遍历select下拉框,进行选项默认选中

var selectedFrom = document.getElementById("dDateFrom");
var ops1 = selectedFrom.options;
for(var i=0;i<ops.length;i++){
var temp1 = ops[i].value;
if(WorkT == temp1){
ops[i].selected = "selected";
break;
}
}

7.调用js函数带参数传递,一定要注意如果传递的参数是非数字的,即是字符串的,一定要加上引号 再传递,此种在拼接组件的时候要注意下

'<button id="start" onclick="startClick(\''+row.projWorkItemAssId+'\','+row.projId+','+row.workItemId+')" value="start">Start</button>',

  黄色背景部分\'表的是一个单引号

8.下拉框默认显示提示语,且不出现在option选项中

var headOpt = "<option value='' disabled selected hidden>---选择---</option>";
$("#bUnit3").append(headOpt);

9.通过div的多个样式去查找元素

$("div[class='pull-left pagination-detail']").empty();

10.jsp页面常用获取项目路径

<%
String scheme = request.getScheme();
String serverName = request.getServerName();
String contextPath = request.getContextPath();
int port = request.getServerPort(); //网站的访问跟路径
String baseURL = scheme + "://" + serverName + ":" + port
+ contextPath;
request.setAttribute("baseURL", baseURL);
%>

  在js中使用直接使用el表达式调用${baseURL}

11.js中使用数组添加元素

var sortArr = new Array();
sortArr.push("aa");

12.table不换行设置

<table id="tableOne" class="text-nowrap">
</table>

13.input输入框变成下划线的样式

    /*輸入框變下劃線*/
.timeInput{
border-bottom: 1px solid #dbdbdb;
border-top:0px;
border-left:0px;
border-right:0px;
width: 10px;
}

14.css将input输入框变成下划线

border-color: #878787;
border-style: solid;
border-top-width: 0px;
border-right-width: 0px;
border-bottom-width: 1px;
border-left-width: 0px"

15.js中将json数组字符串转为对象

var t2="[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";

var myobj=eval(t2);

for(var i=0;i<myobj.length;i++){

   alert(myobj[i].name);

   alert(myobj[i].age);

}

16.下拉框初始化常用(两种方式都可以)

$("#sel_division").empty();
var headOpt = "<option value='-1' selected >-----------請選擇-----------</option>";
$("#sel_division").append(headOpt);
$("#sel_division").find("option:not(:first)").remove();

17.图片铺满div,并解决ie8使用cover不生效

.navbar-default{
/*让图片铺满*/
width: 100vw;
height: 80px;
background-image: url('${baseURL}/pic/header_2.png');
background-position: center center;
background-size: cover;
background-repeat: no-repeat;
/*解决ie8使用background-size:cover不生效*/
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=Enabled, sizingMethod=scale , src='${baseURL}/pic/header_2.png'); }

18.常用div适应屏幕大小css设置

<!DOCTYPE html>

    html,body{
margin:0;
padding:0;
width: 100%;
height:100%;
} div{
/*让div与body高度一致*/
width:100%;
height:100%;
/*border:1px solid red;*/
overflow:hidden;
margin:0 auto; }

19.

<!DOCTYPE html>

20.iframe框架中子页面获取父页面iframe的高度

  通过方法的形式来调用,在父页面写一个方法获取高度,然后在子页面使用方法调用

  父页面:

<div id="myDiv" class="page-content" style="">
<iframe id="iframe_0" src="${baseURL}/Views/BasePages/engineer.jsp" width="100%" height="100%" onload="changeFrameHeight(this)" scrolling="yes" frameborder="no" border="0" marginwidth="0" marginheight="0" allowtransparency="yes">
<%--changeFrameHeight(this)--%>
</iframe>
</div> <script type="text/javascript"> var changeFrameHeight = function (that) {
$(that).height(document.documentElement.clientHeight - 120);
//console.log(document.documentElement.clientHeight - 120)
} //获取iframe的高度
function getFrameHeight(){
return (document.documentElement.clientHeight - 120);
} </script>

  子页面:engineer.jsp

//获取iframe的高度
var frameH = parent.getFrameHeight();

  父页面调用子页面的方法,在子页面写好save_btn()方法即可

 $('#projectOwnerFrame')[0].contentWindow.save_btn();

21.序列化表单

var p = serializeForm($("#header_form2")) || {};
//序列化表单
function serializeForm(form){
var obj = {};
$.each(form.serializeArray(),function(index){
if(obj[this['name']]){
obj[this['name']] = obj[this['name']] + ','+this['value'];
} else {
obj[this['name']] =this['value'];
}
});
return obj;
}

  

js日常笔记的更多相关文章

  1. Js日常笔记之变量删除

    在Javascript是可以使用delete来手动删除变量,通过这样的方法让GC来回收内存,但在JS中并不是所有的对象都可以被删除的 JS中通过 var\function 声明因含有DontDelet ...

  2. Js日常笔记之数组

    1.Array构造函数有一个很大的问题,就是不同的参数,会导致它的行为不一致,es6好像专门为此对数组有升级 因此,不建议使用new Array生成新数组,直接使用数组字面量[...]是更好的做法. ...

  3. Js日常笔记之this

    在javascript中自己创建构造函数时可以利用this来指向新创建的对象上.这样就可以避免函数中的this指向全局了,如下 var x = 2; function test(){ this.x = ...

  4. JS面向对象笔记二

    菜单导航,<JS面向对象笔记一>,  参考书籍:阮一峰之<JavaScript标准参考教程> 一.构造函数和new命令 二.this关键字 三.构造函数和new命令 四.构造函 ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. Vue.js学习笔记(2)vue-router

    vue中vue-router的使用:

  7. .Net 转战 Android 4.4 日常笔记目录

    .Net 转战 Android 4.4 日常笔记(1)--工具及环境搭建 .Net 转战 Android 4.4 日常笔记(2)--HelloWorld入门程序 .Net 转战 Android 4.4 ...

  8. js读书笔记

    js读书笔记 基本类型的基本函数总结 1. Boolean() 数据类型 转换为true的值 转换为false的值 Boolean true false String 任何非空字符串 "&q ...

  9. React.js入门笔记

    # React.js入门笔记 核心提示 这是本人学习react.js的第一篇入门笔记,估计也会是该系列涵盖内容最多的笔记,主要内容来自英文官方文档的快速上手部分和阮一峰博客教程.当然,还有我自己尝试的 ...

随机推荐

  1. [译]15-spring 自动装配

    前面的章节我们已经学习了如何使用bean元素在xml配置文件中声明一个bean.也学习了如何使用bean的子元素contructor-arg 和property进行bean的依赖项的注入. 之前bea ...

  2. 3dMax,Maya与FBX

    3DMax下载地址(包含安装教程与注册方法):http://www.3d66.com/popsoft_1.html 3DMax已经自带导出为fbx格式的功能,所以无需安装fbx插件 Maya下载地址( ...

  3. Python全栈工程师(while、占位符)

    ParisGabriel     Python 入门基础         UnicodeASCII 用8个位表示文字 ,最高位一定是零,低七位表示数值Unicode是由16个位组成的(65535) 最 ...

  4. 四、vue派发更新

    收集的目的就是为了当我们修改数据的时候,可以对相关的依赖派发更新,那么这一节我们来详细分析这个过程. setter 部分的逻辑: /** * Define a reactive property on ...

  5. InfluxDB安装后web页面无法访问的解决方案

    本文属于<InfluxDB系列教程>文章系列,该系列共包括以下 16 部分: InfluxDB学习之InfluxDB的安装和简介 InfluxDB学习之InfluxDB的基本概念 Infl ...

  6. 在nodejs中 Object的toString()方法 querystring的stringify() JSON.stringify()

    刚学nodejs,做到一个例子:发送简单的HTTP请求.遇到一个问题,客户端给服务端发送的消息到服务端,服务端收不到消息,确切的说是“”. 以下是服务端代码:server.js const http ...

  7. Codeforces Round #384 (Div. 2) 734E(二分答案+状态压缩DP)

    题目大意 给定一个序列an,序列中只有1~8的8个整数,让你选出一个子序列,满足下列两个要求 1.不同整数出现的次数相差小于等于1 2.子序列中整数分布是连续的,即子序列的整数必须是1,1,1.... ...

  8. 扩展欧几里得(ex_gcd),中国剩余定理(CRT)讲解 有代码

    扩展欧几里得算法 求逆元就不说了. ax+by=c 这个怎么求,很好推. 设d=gcd(a,b) 满足d|c方程有解,否则无解. 扩展欧几里得求出来的解是 x是 ax+by=gcd(a,b)的解. 对 ...

  9. 汕头市队赛 SRM13 T2

    这道题很容易想到是二分 但是因为可能会爆LL 所以要加一波特判 #include<cstdio> #include<cstring> #include<algorithm ...

  10. python Error Message: command 'gcc' failed with exit status 1

    参考:[ CSDN ] 解决方法 yum install gcc libffi-devel python-devel openssl-devel