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: "列表选择", 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());
**********转摘:https://blog.csdn.net/qq_35029061/article/details/83589808