JQ学习纪要2

http://www.layui.com   Layui弹出层控件,包括弹出窗和按钮,tab等页面元素

http://www.jeasyui.net

http://www.iconfont.cn  阿里巴巴矢量图标库

 

 

-----easyUI datagrid 排序--------------------------------------------------

1.首先设置datagrid属性sortName

2.设置sortOrder
3.设置remoteSort(注:此属性默认为true,如果是对本地数据排序必须设置为false
4.设置列的sortable属性
 
 -----jQuery绑定事件的三种方法-----------------------------------------------------------------
target.click(function(){});

target.on("click",function(){});

target.bind("click",function(){});

target.live("click",function(){});
live方法 可以对后生成的元素也可以绑定相应的事件
--使用trigger触发事件来进行参数传递-------------------------------------
$('p:first').bind('myclick',function(event,arg1,arg2){
     $(arg1).appendTo('body');
     console.log(arg2);
});

$('input').click(function(){
    $('p:first').trigger('myclick', 'arg1gg','this is to console.log']); //第二个参数 string
});
event是默认的事件参数
--在使用bind传递参数------------------------------------------------
var name_value='stonecold';
$('p').bind('click',{name:name_vlaue},function(event){
    console.log(event.data.name);//结果在控制台上显示为stonecold
});
或者 $('p').click({name:name_vlaue},function(event){ console.log(event.data.name);//结果在控制台上显示为stonecold });

---------js中的时间方法-------------------------------------
checkDate = new Date(); --当前时间
checkDate.setYear(X) ; --checkDate的年份设为X,X如果小于100它会认为是19XX年
checkDate.setMonth(X); --checkDate的月份设为X,X如果大于12它会年增加年
checkDate.setDate(X); --checkDate的日期设为X,X如果大于当月最大数它会增加月份
checkDate.setTime(X); --1970-01-01 08:00:00为起始时间增加X,X为毫秒,这样X就可认为是一个用整数表达的时间
Date.parse(checkDate) ; --把时间转换成1970-01-01 08:00:00为起始时间毫秒整数,它与setTime互逆,与getTime()等效

---------easyuidatagrid行选择-------------------------------------
datagrid("getSelected"); 单行
datagrid("getSelections"); 多行

---------edatagrid可编缉easyuiDataGrid-------------------------------------
$("#gridList").edatagrid("getSelected"); 选择行
$("#gridList").edatagrid("getRowIndex", row); 得到行号
$("#gridList").edatagrid("deleteRow", rowIndex); 删除行
grd.edatagrid('addRow'); 新增空行
grd.edatagrid('appendRow', item); 新增并赋值

-------js中的变量------------------------------------------------------------------------------

js 中也有引用类型,但与c#不一样的是在function中运用,js中function一般有自已的作用域,function中覆盖引用对外不可见

  1. 传址的传递:传给函数的是数值的一个引用,函数中对其属性的修改外部可见,但用新引用覆盖其则在外部不可见,比如  
  2. var a = [1, 2, 3];  
  3. var b = [5, 6];  
  4. function change(a,b) {  
  5.   a[0] = 4;    //对其属性的修改外部可见    
  6.   var c = a;  
  7.   a = b;      //用新引用覆盖  
  8.   b = c;  
  9.   alert(a);   //"5,6"           
  10.   alert(b);   //"4,2,3"  
  11. }  
  12. change(a,b);  
  13. alert(a);    //"4,2,3"  
  14. alert(b);     //"5,6"  
  15. 从结果可以看出a和b并没有互换   因为用新引用覆盖在外部不可见 这个很自然 因为函数只是拿到了引用 并没有权力更改引用

 -------------------让<a>充满<div>-----

<div><a  style='display:block'></div>

------jquery 克隆对象-------------

// 浅层复制(只复制顶层的非 object 元素)
var newObject = jQuery.extend({}, oldObject);

// 深层复制(一层一层往下复制直到最底层)
var newObject = jQuery.extend(true, {}, oldObject);
-------------------------------------


 

posted on 2017-08-17 14:54  zsfwh  阅读(111)  评论(0)    收藏  举报