jeecg 按钮文字改成图标方法
这个方法比较笨拙,因为当时自己也是找了好多资料,并无发现,自己去看底层,然后自己用了一个比较笨的方法实现的,不是很灵活,根据页面标签t:dgFunOpt 的 title来控制的图片显示,待优化。如果大家有更好的方法请不吝赐教。
首先看一下页面效果
接下来看一下页面jsp
接下来看一下jeecg底层封装
其中 读到getOptUrl这个方法时,发现了可以入手
protected void getOptUrl(StringBuffer sb) {
//注:操作列表会带入合计列中去,故加此判断
sb.append("if(!rec.id){return '';}");
List<DateGridUrl> list = urlList;
sb.append("var href='';");
for (DateGridUrl dateGridUrl : list) {
String url = dateGridUrl.getUrl();
MessageFormat formatter = new MessageFormat("");
if (dateGridUrl.getValue() != null) {
String[] testvalue = dateGridUrl.getValue().split(",");
List value = new ArrayList<Object>();
for (String string : testvalue) {
value.add("\"+rec." + string + " +\"");
}
url = formatter.format(url, value.toArray());
}
if (url != null && dateGridUrl.getValue() == null) {
url = formatUrl(url);
}
String exp = dateGridUrl.getExp();// 判断显示表达式
if (StringUtil.isNotEmpty(exp)) {
String[] ShowbyFields = exp.split("&&");
for (String ShowbyField : ShowbyFields) {
int beginIndex = ShowbyField.indexOf("#");
int endIndex = ShowbyField.lastIndexOf("#");
String exptype = ShowbyField.substring(beginIndex + 1, endIndex);// 表达式类型
String field = ShowbyField.substring(0, beginIndex);// 判断显示依据字段
String[] values = ShowbyField.substring(endIndex + 1, ShowbyField.length()).split(",");// 传入字段值
String value = "";
for (int i = 0; i < values.length; i++) {
value += "'" + "" + values[i] + "" + "'";
if (i < values.length - 1) {
value += ",";
}
}
if ("eq".equals(exptype)) {
sb.append("if($.inArray(rec." + field + ",[" + value + "])>=0){");
}
if ("ne".equals(exptype)) {
sb.append("if($.inArray(rec." + field + ",[" + value + "])<0){");
}
if ("empty".equals(exptype) && value.equals("'true'")) {
sb.append("if(rec." + field + "==''){");
}
if ("empty".equals(exptype) && value.equals("'false'")) {
sb.append("if(rec." + field + "!=''){");
}
}
}
if (OptTypeDirection.Confirm.equals(dateGridUrl.getType())) {
sb.append("href+=\"[<a href=\'#\' οnclick=confirm(\'" + url + "\',\'" + dateGridUrl.getMessage() + "\',\'"+name+"\')> \";");
}
if (OptTypeDirection.Del.equals(dateGridUrl.getType())) {
String buttonId="";
String title2=dateGridUrl.getTitle();
if(StringUtil.isNotEmpty(dateGridUrl.getButtonId())){
buttonId=dateGridUrl.getButtonId();
}
if("图片".equals(title2)){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'删除\'><a href=\'#\' οnclick=delObj(\'" + url + "\',\'"+name+"\')><img id=\'"+buttonId+"\' src=\'images/0.png\' width=\'20\' height=\'20\'></a></span>\";");
}else{
sb.append("href+=\"<span id=\'"+buttonId+"\' >[<a href=\'#\' οnclick=delObj(\'" + url + "\',\'"+name+"\')>\";");
}
}
if (OptTypeDirection.Fun.equals(dateGridUrl.getType())) {
String name = TagUtil.getFunction(dateGridUrl.getFunname());
String parmars = TagUtil.getFunParams(dateGridUrl.getFunname());
String buttonId="";
if(StringUtil.isNotEmpty(dateGridUrl.getButtonId())){
buttonId=dateGridUrl.getButtonId();
}
if("公司信息修改图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'公司信息修改\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/1.png\' width=\'20\' height=\'20\'></a></span>\";");
}else if("人员信息修改图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'人员信息修改\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/2.jpg\' width=\'20\' height=\'20\'></a></span>\";");
}else if("查看详情图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'查看详情\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/3.png\' width=\'20\' height=\'20\'></a></span>\";");
}else if("取消审核图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'取消审核\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/1.png\' width=\'20\' height=\'20\'></a></span>\";");
}else if("确认交费图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'确认交费\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/4.jpg\' width=\'20\' height=\'20\'></a></span>\";");
}else if("取消交费确认图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'取消交费确认\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/5.jpg\' width=\'20\' height=\'20\'></a></span>\";");
}else if("查看付款回执单图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'查看付款回执单\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/6.jpg\' width=\'20\' height=\'20\'></a></span>\";");
}else if("下载付款回执单图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'下载付款回执单\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/7.png\' width=\'20\' height=\'20\'></a></span>\";");
}else if("发送邮件图片".equals(dateGridUrl.getTitle())){
sb.append("href+=\"<span id=\'"+buttonId+"\' title=\'发送邮件\'><a href=\'#\' οnclick=" + name + "(" + parmars + ")><img id=\'"+buttonId+"\' src=\'images/8.jpg\' width=\'20\' height=\'20\'></a></span>\";");
}else{
sb.append("href+=\"<span id=\'"+buttonId+"\' >[<a buttonId=\'"+buttonId+"\' href=\'#\' style=\'color:"+dateGridUrl.getcolor()+"\' οnclick=" + name + "(" + parmars + ")>\";");
}
}
if (OptTypeDirection.OpenWin.equals(dateGridUrl.getType())) {
sb.append("href+=\"[<a href=\'#\' οnclick=openwindow('" + dateGridUrl.getTitle() + "','" + url + "','"+name+"','" + dateGridUrl.getWidth() + "','" + dateGridUrl.getHeight() + "')>\";");
}
if (OptTypeDirection.Deff.equals(dateGridUrl.getType())) {
sb.append("href+=\"[<a href=\'" + url + "' title=\'"+dateGridUrl.getTitle()+"\'>\";");
}
if (OptTypeDirection.OpenTab.equals(dateGridUrl.getType())) {
sb.append("href+=\"[<a href=\'#\' οnclick=addOneTab('" + dateGridUrl.getTitle() + "','" + url + "')>\";");
}
if ((OptTypeDirection.Fun.equals(dateGridUrl.getType()))||(OptTypeDirection.Del.equals(dateGridUrl.getType()))) {
if(dateGridUrl.getTitle().indexOf("图片")>-1){
}else{
sb.append("href+=\""+dateGridUrl.getTitle()+"</a>]</span>\";");
}
}else{
if(dateGridUrl.getTitle().indexOf("图片")>-1){
}else{
sb.append("href+=\"" + dateGridUrl.getTitle() + "</a>]\";");
}
}
if (StringUtil.isNotEmpty(exp)) {
for (int i = 0; i < exp.split("&&").length; i++) {
sb.append("}");
}
}
}
sb.append("return href;");
}
本人的图片都放在项目的images目录下