写在前面:

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

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. 网易2017校园招聘算法题c语言实现源码

    题目: 给定一个数组,除了一个数出现1次之外,其余数都出现3次.找出出现一次的数.如:{1, 2, 1, 2, 1, 2, 7}, 找出7. 格式: 第一行输入一个数n,代表数组的长度,接下来一行输入 ...

  2. Vue打包app

    前言 公司之前用的app就是一个套壳挂个链接就能用的app,后来需要添加微信分享方便传播,没办法只好做成混合式的app了, 因为之前做.net用vs可以创建cordova项目也试着玩过,就决定用cor ...

  3. Windows 下开发.NET Core应用

    一.使用Visual Studio 2015开发1.1 依次安装Visual Studio 2015 Update 3.NET Core 1.0.0 - VS 2015 Tooling Preview ...

  4. php中普通方法和静态方法的区别以及抽象类和接口

    实例化类产生对象.class fenbi{ //普通成员,属于对象 public $length = "10cm"; //静态成员,静态变量,属于类. public static ...

  5. linux下的静态库和共享库

    转载&&增加:      我们在编写一个C语言程序的时候,经常会遇到好多重复或常用的部分,如果每次都重新编写固然是可以的,不过那样会大大降低工作效率,并且影响代码的可读性,更不利于后期 ...

  6. 四、vue派发更新

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

  7. P2135 方块消除

    题目描述 Jimmy最近迷上了一款叫做方块消除的游戏.游戏规则如下:n个带颜色方格排成一列,相同颜色的方块连成一个区域(如果两个相邻方块颜色相同,则这两个方块属于同一区域).为简化题目,将连起来的同一 ...

  8. java泛型的一些解释

    public <A extends Annotation> A getAnnotation(Class<A> annotationClass)我们经常在帮助文档中看到这样的方法 ...

  9. uva1214 Manhattan Wiring 插头DP

    There is a rectangular area containing n × m cells. Two cells are marked with “2”, and another two w ...

  10. Oracle SQL 疑难解析读书笔记(一 基础)

    1.在语句中找到和消除空值 select first_name,last_name from hr.employees where commission_pct is null is null 和 i ...