JS操作总结
JS 数据类型转换 :
函数类型转换:
js提供了parseInt()和parseFloat()两个转换函数。前者把值转换成整数,后者把值转换成浮点数。只有对String类型调用这些方法,这两个函数才能正确运行;对其他类型返回的都是NaN(Not a Number)
parseInt("1234blue"); //returns 1234
parseInt("0xA"); //returns 10
parseInt("22.5"); //returns 22
parseInt("blue"); //returns NaN
对二进制、八进制,甚至十进制(默认模式),都可以这样调用parseInt()方法:
parseInt("10", 2); //returns 2
parseInt("10", 8); //returns 8
parseInt("10", 10); //returns 10
强制类型转换:
Boolean(value)——把给定的值转换成Boolean型;
Number(value)——把给定的值转换成数字(可以是整数或浮点数);
String(value)——把给定的值转换成字符串。
Number()的强制类型转换与parseInt()和parseFloat()方法的处理方式相似,只是它转换的是整个值,而不是部分值
判断数值:
NaN 即 Not a Number
isNaN(numValue)
function checkValue()
{
if(isNaN(document.all.textbox.value))
{
alert("请用数字录入!");
return false;
}
}
jquery的text():
不能用于input等的value设置;要用val();
跨域解决:
<meta http-equiv="Access-Control-Allow-Origin" content="*">
或者在ajax中使用jsonp格式, 如jquery中ajax请求参数 dataType:'JSONP'
jquery样式操作:
addClass()只是追加
attr("class","");则是覆盖
toggleClass("blue"); 转换样式
查找子元素:
直接子类查找(不查找子孙类):children()
查找子孙类:$(this).find();
表单提交一个name多个value时:
采用Array对象实现
var array=new Array();
array.push("a");
array.push("b");
提交时换车字符串:array.toString();会变成"a,b"
打开链接:
window.open(URL,name,features,replace)
window.open("http://www.w3school.com.cn","_blank","toolbar=yes, location=yes, directories=no, status=no, menubar=yes, scrollbars=yes, resizable=no, copyhistory=yes, width=400, height=400",false)
最简单的写法:
window.open("http://www.w3school.com.cn")
监听超链接的click事件:
<a href="#" onclick="changeArea(this);return false;" title="0">所有地区</a>
background-img 的URL可以是相对路径(../../image/test.jpg)也可以是绝对路径
JS中文编码:
当以url的形式(url?param=...)传递参数时,如果传递的是日文,或中文字符串那么在接收的时候是乱码形式。
JavaScript:
encodeURI(value):将value转换成utf-8,
decodeURI(value):将utf-8的value反转成字符串。
Java:
URLDecoder.decode(value, "utf-8");
URLEncoder.encode(value, "utf-8");
前端:
url1=encodeURI(url);
url2=encodeURI(url);
要编码两次的原因是后台服务器会自动decode一次;
后台:
String name1=request.getParameter("name");
String name2 = java.net.URLDecoder.decode(name1,"UTF-8");
不管容器用的什么编码,都不会有乱码:
url1会把url中的中文编为ASCII码。
url2对url1进行再编码,由于是对ASCII码进行编码,在request.getParameter("name")解码的时候,
不管是按 GBK 还是 UTF-8 还是 ISO-8859-1 都好,都能够正确的得到url1。
因为ASCII码用GBK、UTF-8、ISO-8859-1编码的结果是相同的。
iframe的操作:
JQuery问题总结:
Jquery ajax:
jQuery.post(url,data,function(data, textStatus, jqXHR){},dataType)
.error(function(){
//处理异常
});
其中:
dataType:规定预期的服务器响应的数据类型,例如json,text等
data:参数,例如{"workitemids":workItemArr.toString(),"toUser":toUser}
$.get(url,data,success(response,status,xhr),dataType)
需要异常最好使用ajax:
$.ajax({
type : "post",
url : urlv,
cache : false,
data : datav,
async : true//默认值是true,异步请求
dataType : "html",
success : function(result) {
$("#"+divID).html(result);
},
complete : function(event,request, settings){
},
error : function(event,request, settings) {
}
});
在IE下不能hide()隐藏select option的问题解决:
function submitSearch() {
var searchWord = $('#F_NameStartBy').val();
$("#F_OptName").empty();
if(!searchWord){
for(var optionTemp in crm_cust_arr){
$("#F_OptName").append(crm_cust_arr[optionTemp]);
}
}
else{
for(var optionTemp in crm_cust_arr){
if (optionTemp.indexOf(searchWord) != -1) {
$("#F_OptName").append(crm_cust_arr[optionTemp]);
}
}
}
}
function resetSearch(){
$("#F_OptName").empty();
for(var optionTemp in crm_cust_arr){
$("#F_OptName").append(crm_cust_arr[optionTemp]);
}
}
jquery获取和设置radio,check,select选项(转):
select控件选项
2,获取select选中的text的值
$("#selectID").find("option:selected").text()
3,设置select的第几项为当前选中项
$("#selectID").attr("value",2);//设置第二项为当前选中项
4,添加option
$("selectID").append("<option value='5'>select5</option>");
5,删除一项option
$("#SelectID option[value='3']").remove(); //删除Select中Value='3'的Option
6.,获取Select选择的索引值
var checkIndex=$("#selectID ").get(0).selectedIndex; //获取Select选择的索引值
7,删除所有项
$("#SelectID").remove();
checkbox控件的使用
$('#'+tableID+' tbody').on( 'click', 'tr', function () {
var checkObj=$(this).find(":checkbox[name='id_check']");
console.log(checkObj);
var checkStatus=checkObj.attr("checked");
if(checkStatus){
checkObj.prop("checked",false);
}
else{
checkObj.prop("checked",true);
}
console.log( table.row( this ).data() );
} );
radio控件
1,获取选中的value值
$("input[type='radio']:checked").val();
2,设置指定的项为当前选中项
$("input[type='radio']").eq(1).attr("checked",true);//设置第二项为选中项
jquery绑定事件:
如果用$.on来绑定,则重新加载绑定之前需要$.off 不然会出现多次绑定的情况;
建议事件绑定统一用$.bind
$.extend函数的使用:
http://www.cnblogs.com/zikai/p/5074686.html
JQuery mobile的问题总结:
一切组件都要在<div data-role="page"里面才能进行初始化
$(selector).get(url,data,success(response,status,xhr),dataType)
iframe的父子调用说明:
http://blog.csdn.net/lk_blog/article/details/7290671
JSTL读取Map:
http://blog.csdn.net/yuxiali/article/details/6509966

浙公网安备 33010602011771号