JavaScript学习指南JQuery技术分享学习

常用的JS/jQuery技术和技巧(转载)

2017-06-15  本文已影响26人  猿来独往

转载一篇博客
原文链接为:http://blog.csdn.net/zollty/article/details/53944071

1. 获取指定id的某个属性的值:

例如获取id=myForm的表单的action属性的值
document.getElementById("myForm").action
也可以设置它的值:
document.getElementById("myForm").action = "/cqrd/aa.action"
获取指定name的某个属性的值,例如
document.myForm.action

2. 通过js去提交表单:

document.getElementById("myForm").submit();
即使myForm这个表单中没有<input type="submit" value="查询"/>
也可以用此方法去提交表单。

3. 跳转:

document.location.href = "${ctx}/emp/delEmp.action?id="+id ;
跳转实例:{根据所选的option的值执行跳转}
onchange="location.href=this.options[this.selectedIndex].value">

4. 正则表达式: 验证日期格式 2014-11-30

如下:

function validDate(str) {

   var reg = new RegExp("^201[0-9]-((0[1-9])|10|11|12])-((0[1-9])|(1[0-9])|(2[0-9])|30|31)$");

   return reg.test(str);

}```

正则表达式特殊符号转义,例如点、星号,反斜杠转义为 \.和\*
####5. 判断字符串长度:【中文算3个字符】
 方法如下:
`var len = $("#taskName").val().replace(/[^\x00-\xff]/g,"***").length;`
####6. URL跳转:

<body onload="JavaScript:document.location.href='${ctx}/dept/query.do'"></body>```

7. JS字符串替换:

replace(expr, target),第一个为正则表达式
所以replace("a","b")只会替换第一个(匹配一次)。
要全部替换,用:(匹配全部)
replace(new RegExp(/(a)/g),'b') 注意不要在(a)上加单、双引号。

8. 获取多选按钮的值:

$("input[name='RA_CHO']").click(function(){ 
  var RA_CHO_value = ''; 
  $("input[name='RA_CHO']:checked").each(function(){ 
   RA_CHO_value += $(this).val() + ","; 
  }); 
  if(RA_CHO_value.length>0){ 
   RA_CHO_value = RA_CHO_value.substring(0, RA_CHO_value.length-1); 
  } 
  alert(RA_CHO_value); 
 });```
####9. jQuery设置标签为隐藏或显示动画(注意不是style)

$(this).hide("fast");
$(this).show("fast");
//jquery判断标签是否为隐藏或显示状态
if($("#a").is(":visible"))
if($("#a").is(":hidden"))```

10. jQuey AJAX模板:

$.ajax({
    url: '/ax/text',
    type: 'POST',
    data: {
        eftDateBegin: $("#eftDateBegin").val(),
        eftDateEnd: $("#eftDateEnd").val()
    },
    dataType: 'json',
    timeout: 1000,
    success: function(data) {
        $("input#showTime").val(data[0].demoData);
    },
    error: function(XMLHttpRequest, textStatus, errorThrown) {
        alert();
    }
});```
####11. 常用JS函数:

//判断是否为空
function isNull(value) {
if ((value == "") || trim(value).length == 0) return true;
return false;
}

//是否以中文开头
function isChinese(str) {
if (trim(str) == "") {
return false;
}
if (str.charCodeAt(0) < 0x4e00 || str.charCodeAt(0) > 0x9fa5) {
return false;
} else {
return true;
}
}

//验证字符串为数字
function checkNum(tt, viewobj) {
var reg = /\D/; /数字字符/
if (reg.test(tt)) {
if (viewobj && viewobj.tagName.toUpperCase() == 'SPAN') {
viewobj.className = 'alertcolor';
viewobj.innerHTML = '请输入数字';
}
return false;
}
return true;
}```

12. 异步加载js:

//该匿名函数用于异步加载js
(function()  {
    function  async_load()  {
        var  s  =  document.createElement('script');
        s.type  =  'text/javascript';
        s.async  =  true;
        s.src  =  'js/config.js';
        var  x  =  document.getElementsByTagName('script')[0];
        x.parentNode.insertBefore(s,  x);
    }
    if  (window.attachEvent) {
        window.attachEvent('onload',  async_load);
    } else {
        window.addEventListener('load',  async_load,  false);
    }
})();```
####13. JSON操作:

 1、字符串转换成JSON对象:
用jQuery:
`jQuery.parseJSON( data );`
2、JSON对象转字符串
用json2.js
`text = JSON.stringify( jsonObj );`

####14. IE(<10)下面无法往table里面插入 innerHTML:
例如:

<html>
<head>
</head>
<body>
<table id="demo"></table>
<P id="PP"></P>
<script type="text/javascript">
alert("xxxxxxxxxx");
document.getElementById("PP").innerHTML= "ZZZZZZZZZZZZZZZZZZZZZ";
document.getElementById('demo').innerHTML= "<tr><td>0000000000000000000</td></tr>";
$("#demo").html("<tr><td>0000000000000000000</td></tr>");
alert("ddddddddddd");
</script>
</body>
</html>```

table中是无法插入的innerHTML的。

15. JS函数调用时,传字符串时一定要加上''(单引号):

例如:
download('${task.taskNo}'),如果不加'',则download函数无法执行
如果是数字时,就无需加''(单引号)。

16. 跨域访问:

出 于安全的考虑,Web 浏览器从很早之前就定下“同域安全策略”的标准,默认情况下同一域名下的页面只能向同域(包括 CNAME 域名、端口)下的 URL 发送所有类型的 HTTP 请求。而向不同域的地址发送非 GET 请求时,默认情况下只能返回同域安全策略错误。

对此,在发起上传或下载请求的时候,七牛的服务会返回相应的支持跨域的 Header:
上传(upload.qiniu.com)

Access-Control-Allow-Headers: X-File-Name, X-File-Type, X-File-Size
Access-Control-Allow-Methods: OPTIONS, HEAD, POST
Access-Control-Allow-Origin: *```


 下载(<bucket>.qiniudn.com)
`Access-Control-Allow-Origin: *`

**注意:本文来自转载,如有侵权,请联系作者删除**
上一篇下一篇

猜你喜欢

热点阅读