• jquery的eval的使用


    jquery的eval的使用

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

    <script type="text/javascript">
    	var str="1+2+3";
    	alert(eval(str));
    </script>
    

      

                  <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: "列表选择",
    	                 _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());
    

      

     **********转摘:https://blog.csdn.net/qq_35029061/article/details/83589808

     
  • 相关阅读:
    (Toolbar)Android中如何消除Toolbar左边的空白
    (TextView)Android中为TextView赋初始值
    (Edittext)Android中界面中有多个Edittext,如何默认让第二个获取焦点
    (警告)Android中报Custom view `&#215;&#215;&#215;` has setOnTouchListener called on it but does not override performClick警告
    (Toolbar)Android中app:showASAction的值及含义
    个人课程总结
    (list)关于list清空问题的解决
    Ubuntu hive 安装过程中遇到的一些问题
    学习进度——第十七周
    个人课程总结
  • 原文地址:https://www.cnblogs.com/linybo/p/13188518.html
Copyright © 2020-2023  润新知