jquery的eval的使用

jquery的eval的使用

eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。

              <button type="button" id="gfyButton" class="btn btn-info btn-sm" action="querySelect(this,event)">
                                    选择
              </button>


;(function($){   
	debugger;
    var options = {
    		fieldCode: "gfyId",
            url: "../../Security/selector/user/PublicServiceUserList.html?s=" + Math.random(),
            multi: false,
            code: "gfyId,gfyIdName",
            keyRespField: "gfyId,id",
            dictCode: "publicserviceName",
            area: ['90%','90%']
    };
    /*引用查询选择*/
	function renderSelectorMy(options){
		debugger;
		var defaults = {};
		this.settings = $.extend({},defaults,options);
		var $domObj = $("#" + this.settings.fieldCode + "-popSelector");
		this.settings.url = $domObj.attr("action") ? $domObj.attr("action") : this.settings.url;
		this.settings.multi = $domObj.attr("multi") ? $domObj.attr("multi") : this.settings.multi;
		this.settings.code = $domObj.attr("codeAndName") ? $domObj.attr("codeAndName").split(",") : this.settings.code.split(",");
		this.settings.keyRespField = this.settings.keyRespField ? this.settings.keyRespField.split(",") : "";
		this.init();
	}
	
	//为函数添加原型链上的方法
	renderSelectorMy.prototype = {
		init: function(){
			debugger;
			var _self = this,
				_keys = _self.settings.code;
			
			$("input[name='" + _keys[0] +"']").parent().parent().find("button").unbind('click').bind('click', function(){
				var action = "_self." + $(this).attr("action");
				eval(action);
			});

		},
		querySelect : function(thi,event){
			debugger;
			var _self = this;
			var url = _self.settings.url;
			var _keys = _self.settings.code;
			var keyRespField = _self.settings.keyRespField;
			var id = keyRespField[1];
			var ids = $("input[name='" + _keys[0] +"']").val();

			if(url.indexOf("?") != -1) {
                url = url + "&" + id + "="+ids;
            }else {
                url = url + "?" + id + "="+ids;
			}
			$Core.UI.openDialog("selwind", url,
	            {
	                title: "列表选择",
	                width: _self.settings.area[0],
	                height: _self.settings.area[1],
	                onClose: function () {
	                }
	            });

			
		},
		echoSelect : function(_data){
			var _self = this;
			var data = _data.data,
				_keys = _self.settings.code,
				_rkeys = _self.settings.keyRespField,
				dictName = "",
				dictCode = _self.settings.dictCode;
			$Core.DicCache.initDictionary(dictCode,function(dicts){
				var _dicts = dicts;
				if(dicts && dicts.data){
					var dictDatas = dicts.data[dictCode];
					for(var i=0,len=dictDatas.length; i<len; i++){
						var item = dictDatas[i];
						if(data[_keys[0]] == item[_rkeys[1]]){
							var itemName = item.text;
							dictName += itemName +",";
						}
					}
					$("span input:text", $("div #" + _keys[0] + "-popSelector")).val(dictName.substr(0,dictName.length-1));
				}else{
					$("span input:text", $("div #" + _keys[0] + "-popSelector")).val(dictName);
				}
				
				
			})
		},
		selectResultAfterCallback: function(checkRlt){
			
			var _self = this,
				multi = _self.settings.multi;
			if(checkRlt.length == 0){
				$Core.UI.message.warning("选请选择数据!");
			}
			
			if(!multi && checkRlt.length != 1){
				$Core.UI.message.warning("单选,请选择一条数据!");
			}
			
			var _keys = _self.settings.code,
			code = "",
			name = "";
			if(!_self.settings.multi){
				code = checkRlt[0]['code'];
				name = checkRlt[0]['name'];
			}else{
				var _code = "",
					_name = "";
				for(var i=0,len=dataArr.length; i<len; i++){
					_code += checkRlt[i]['code'] +",";
					_name += checkRlt[i]['name'] +",";
				}
				code = _code.substring(0,_code.length-1);
				name = _name.substring(0,_name.length-1);
			}
		
			//给input[name='']:text 赋值
			address = checkRlt[0]['address'];
			headPerson = checkRlt[0]['headPerson'];
			headPersonPhone = checkRlt[0]['headPersonPhone'];
			customerType = checkRlt[0]['customerType'];
			$("input[name='address']").val(address);
			$("input[name='headPerson']").val(headPerson);
			$("input[name='headPersonPhone']").val(headPersonPhone);
			/*$("input[name='customerType']").val(customerType);*/
			$("#customerType").combobox("setValue", customerType);
			$("input[name='" + _keys[0] + "']:hidden").val(code);
			$("span input:text", $("div #" + _keys[0] + "-popSelector")).val(name);
			
			$(".panel-tool-close").trigger('click');
		}
		
	}	
	
	  //扩展jquery类方法
	$.extend({
		renderSelectorMyf : function(options){
			return new renderSelectorMy(options);
		}
	});
})(jQuery)
debugger;	
    renderSelector = $.renderSelectorMyf({
        fieldCode: "gfyId",
        url: "../../Security/selector/user/PublicServiceUserList.html?s=" + Math.random(),
        multi: false,
        code: "gfyId,gfyIdName",
        keyRespField: "gfyId,id",
        dictCode: "publicserviceName",
        area: ['90%','90%']
    });
	

    _self.renderSelectors = [renderSelector];

执行css方法

    _self.listOption.loadSuccess = function(){
        $(".datagrid-btable tr").find("td[field='gfyId']").css({"text-decoration":"underline","color":"#367fa9"});
    };
eval(_this.listOption.loadSuccess());

猜你喜欢

转载自blog.csdn.net/qq_35029061/article/details/83589808
今日推荐