写在前面:

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

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. 过滤器(Filter)和Nuget

    一.过滤器 AOP(面向切面编程)是一种架构思想,用于把公共的逻辑放到一个单独的地方,这样就不用每个地方都写重复的代码,比如程序中发生异常,不用每个地方都try catch 只要在(golbal的Ap ...

  2. 孤荷凌寒自学python第十八天python变量的作用范围

    孤荷凌寒自学python第十八天python函数的形参与变量的范围 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.在python的函数中各种不同的形式参数在定义的先后顺序上有规定: 必须 ...

  3. 带外键Mysql

    带外键的表格的查询 复制代码 //////////////////查询指定表外键约束 select a.name as 约束名, object_name(b.parent_object_id) as ...

  4. win10下乌龟git安装和使用

    一.安装git for windows 首先下载git for windows客户端http://msysgit.github.io/ 安装过程没什么特别的,不停next就ok了     图太多就不继 ...

  5. linux备忘录-bash

    知识点 环境变量 HOME PATH MAIL SHELL RANDOM // 0~32767的随机数 declare -i number=$RANDOM*10/32768 //0-9的随机数 HIS ...

  6. mssql发布订阅事项

    在发布订阅过程中遇到2个需求: 1.在原有的发布快照中增加发布内容,追加模式需要在追加的表中设计一个主键,要不然没有办法进行发布的,另外还得注意将这两个字段进行更改: select immediate ...

  7. C++ 11 智能指针 lamda 以及一个 围棋程序

    lamda表达式使用 char* p = "Hello world"; ,nl = ; for_each(p,p+, [&](char i){ if(i=='e') ne+ ...

  8. hdu 1574 RP问题 01背包的变形

    hdu 1574 RP问题 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1574 分析:01背包的变形. RP可能为负,所以这里分两种情况处理一下就好 ...

  9. Eclipse中一个Maven工程的目录结构 (MacOS)

    1. 为什么写这篇文章 在之前的javaSE开发中,没有很关注Eclipse工程目录下的环境,总是看见一个src就点进去新建一个包再写一个class.以后的日子中也没有机会注意到一个工程到底是怎么组织 ...

  10. NBUT校赛 J Alex’s Foolish Function(分块+延迟标记)

    Problem J: Alex’s Foolish Function Time Limit: 8 Sec  Memory Limit: 128 MB Submit: 18  Solved: 2 Des ...