js几个简单的工具类函数 事件绑定处理、加载数据字典下拉框、重新加载下拉框、参数处理

JS事件绑定与下拉框加载
本文介绍了一个JavaScript函数biz.KeyBindOn,用于为页面元素绑定键盘事件,并提供了一个函数biz.fillSelect用于加载数据字典到HTML下拉框中。此外,还提供了一个biz.reloadSelect函数用于重新加载下拉框内容。
//add by heyin 事件绑定处理
biz.KeyBindOn=function(p,v,C){
var KeyMap={
    48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"a",66:"b",67:"c", 68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",107:"+",109:"-",110:".",188:",",190:".",191:"/",192:"'",219:"[",220:"\\",221:"]",222:'"',8:"backspace",9:"tab",13:"enter",19:"pause",27:"escape",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",44:"printscreen",45:"insert",46:"delete",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7", 119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",144:"numlock",145:"scrolllock"
    } ;
if(C==undefined)C=true;
$(v).keydown(function(K){
var O="";
if(K.ctrlKey)O="ctrl_";
if(K.altKey)O+="alt_";
if(K.shiftKey)O+="shift_";
O=O+(KeyMap[K.keyCode]?KeyMap[K.keyCode]:"");
if($.isFunction(p[O])){
if(p[O].call(v,K)==="noblock")return true;
//翻页input除外
if(C && K.target.className != "ui-pg-input"){
K.preventDefault();
K.stopPropagation();
 return false
}

} )
} ;
//add by bj 加载数据字典下拉框
biz.fillSelect = function (rowId, colName, dictType, selectedValue, changeFunc, isAddEmpty) {
$.ajax({
  type: "POST",
  url:contextPath+"/bizdict/dict?typeCode="+dictType,
  success: function(data){
  $("#"+rowId+"_"+colName).empty().unbind("change");
  if(isAddEmpty){
  $("#"+rowId+"_"+colName).append("<option value='"+"'>"+"-- 请选择 --"+"</option>");
}
  for(var i=0; i<data.length; i++){
  if(data[i].value == $.trim(selectedValue)){
  $("#"+rowId+"_"+colName).append("<option selected='selected' value='"+data[i].value+"'>"+data[i].name+"</option>");
}else{
$("#"+rowId+"_"+colName).append("<option value='"+data[i].value+"'>"+data[i].name+"</option>");
}
}
  if(typeof changeFunc == "function"){
  $("#"+rowId+"_"+colName).bind("change",changeFunc).trigger("change");
  }
}
});
};
//add by heyin 重新加载下拉框
biz.reloadSelect = function (opts) {
$.ajax({
  type: "POST",
  url:opts.url,
  data: opts.param,
  success: function(data){
  $("#"+opts.id).empty();
  if(opts.addEmptyItem){
  $("#"+opts.id).append("<option value='"+"'>"+"-- 请选择 --"+"</option>");
}
  for(var i=0; i<data.length; i++){
  if($.trim(data[i].value) == $.trim(opts.selectedValue)){
  $("#"+opts.id).append("<option selected='selected' value='"+data[i].value+"'>"+data[i].name+"</option>");
}else{
$("#"+opts.id).append("<option value='"+data[i].value+"'>"+data[i].name+"</option>");
}
}
  if(typeof opts.callback == "function"){
  opts.callback();
  }
}
});
};
//add by heyin 将js obj对象转换成url参数 如对象{a:1,b:2} 转成 a=1&b=2
biz.parseParam = function(param, key){
   var paramStr="";
   if(param instanceof String||param instanceof Number||param instanceof Boolean){
       paramStr+="&"+key+"="+encodeURIComponent(param);
   }else{
    if(param){
    $.each(param,function(i){
    var k=key==null?i:key+(param instanceof Array?"["+i+"]":"."+i);
    paramStr+='&'+biz.parseParam(this, k);
    });
    }
   }
   return paramStr.substr(1);
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值