JavaScript——疑难杂症总结

1、JS折叠代码

//#region

...

//#endregion

2、iframe的使用——dhtmlx中的

<iframe src="/con/fun?type=" name="iframeMerge" id="iframeMerge" width="100%" onload="this.height=iframeMerge.document.body.scrollHeight"></iframe>

//通过替换iframe的src来实现局部刷新
document.getElementById("iframeMerge").src = "/fun/con?type=" + $('#scrapType').val();

var myMindow = new dhtmlXWindows();
var winid = myMindow.window(id);//id为子弹窗的ID
var ifr = winid.getFrame();
//父页面Iframe获取子页面iframeMerge的Form表单信息
ifr.contentWindow.document.getElementById("Iframe").contentWindow.$("#iframeMerge");

3、获取table的所有行和某一行的所有单元格

var tr = document.getElementById("mytable").rows;//mytable为table的ID

var tds = tr[i].cells;//获取第i行的所有单元格

4、input输入框防止键盘输入,支持扫码枪输入和回车

var keydownFirstTime = 0;
function keyup(event,obj) {
    console.log(event.keyCode);
    //剔除回车键
    if (event.keyCode != 13) {
        var date = new Date();
        var nowTime = date.getTime();
        if (obj.value.length < 2) {
            keydownFirstTime = nowTime;
        }
        //按键时间超过50ms时清空数据
        if (nowTime - keydownFirstTime > 50) {
            obj.value = '';
        }
     }
}
//在input标签中添加onkeyup事件
onkeyup="keyup(event,this);"

//回车事件
$("#AlFilm").keydown(function (e) {
    if (e.which == 13) {}
});

5、给datetime-local的input设置默认时间

//需要的时间格式为:yyyy-mm-ddThh:mm:ss
function getFormat() {
    var format = "";
    var nTime = new Date();
    format += nTime.getFullYear() + "-";
    format += (nTime.getMonth() + 1) < 10 ? "0" + (nTime.getMonth() + 1) : (nTime.getMonth() + 1);
    format += "-";
    format += nTime.getDate() < 10 ? "0" + (nTime.getDate()) : (nTime.getDate());
    format += "T";
    format += nTime.getHours() < 10 ? "0" + (nTime.getHours()) : (nTime.getHours());
    format += ":";
    format += nTime.getMinutes() < 10 ? "0" + (nTime.getMinutes()) : (nTime.getMinutes());
    //format += ":00";

    return format;
}

6、获取页面的来源URL

//用b接收来路链接
var b = document.referrer;
console.log("来路链接" + b);
//判断来路链接是否为空,若为空则什么都不提示,若不为空则为正常访问
if(b == ""){
    alert('来历不明!');
}

7、光标置后——鼠标的光标始终位于输入的文字之后

function setPointer(event) {
    //获取焦点后光标在字符串后 
    //其原理就是获得焦点后重新把自己复制粘帖一下 
	var id = event.id;
	var t=$("#"+id).val(); 
	$("#"+id).val("").focus().val(t);
}

8、服务端文件导出

window.location.href = "../con/fun?fileName=" + fileName;

9、HTML鼠标焦点默认停留在某个input框中

document.getElementById("input_box_no").focus();

10、select通过add和append添加option

var select2 = document.getElementById("a2");
var select1 = document.getElementById("a1").value; 
for(var i in city[select1 ]) {    
    select2.add(new Option(city[select1][i], city[select1][i]), null);
    //select2.append("<option value='" + s + "'>" + s +"</option>");                
}

11、正则匹配整数、非零开头的小数、零开头的小数

(/^[1-9][0-9]*([.][0-9]+)?$/.test(data.QTY) || /^[0]([.][0-9]+)?$/.test(data.QTY))

12、删除select标签中的option标签

$("#ID").html('');
$('#ID').find('option').remove();

//Layui中的方式
$("#ID").empty();
layui.form.render("select");

13、对所有同名的id的标签进行某个操作

$(function(){
    $("[id=open_app]").click(function(){//类似于数组查询全部的id=open_app
        ...
    });
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值