easyui combobox下拉框中显示大于号小于号的问题

Posted zhangguantaomj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了easyui combobox下拉框中显示大于号小于号的问题相关的知识,希望对你有一定的参考价值。

前两天同事做了个功能,通过勾选下拉框里的值进行列表查询,结果下拉框里的值是“0<t<=2”、“2<t<=5”、“t>5”这样的。

combobox是用脚本渲染出来的,里面的data的格式就如这样:

[ID:"01",TEXT:"0<t<=2",ID:"02",TEXT:"2<t<=5",ID:"03",TEXT:"t>5"]

结果<小于号被识别成了html的标签,这样就导致了下拉框里显示的值都是不正常的,这里我尝试了两种解决办法:

方法一(前台还有点问题):

我从后台取到数据之后,用Java代码进行遍历,把其中的<使用String里面的replace方法换成“&lt;”,把其中的>换成了“&gt;”

经过这一番处理之后,我发现点击下拉按钮之后里面的内容可以正常显示了,但是当我选中其中一个之后发现内容框里面的值居然成了“0&lt;t&lt;=2”、“2&lt;t&lt;=5”、“t&gt;5”,

这个我就没有继续再往后研究了,改用了方法二,有兴趣的可以继续沿着这条路走下去

方法二:

这次直接换到前台来处理,发现简单了很多,直接在前台用replace方法把<换成“&lt;”,把其中的>换成了“&gt;”,语法也很简单,只需要在渲染combobox的时候添加个formatter方法

具体代码如下:

formatter:function (row) 
       var text = row.TEXT;
       if (text.indexOf("<"))
             text = text.replace("<","&lt;");
        else if (text.indexOf(">")) 
             text = text.replace(">","&gt;");
       
       var s = ‘<span style="font-weight:normal">‘ + text + ‘</span><br/>‘
       return s;

 

以上是关于easyui combobox下拉框中显示大于号小于号的问题的主要内容,如果未能解决你的问题,请参考以下文章

easyui combobox中的值是从数据库拿过来的,编辑easyui gridveiw时combobox定位gridveiw对应值

easyui combobox不论选啥值都只显示第一个怎么回事?

easyui combobox 设置值

请教如何获取easyui-combobox下拉菜单的多个选中值

jquery easyui combobox 添加添加选择项

easyUI的combobox下拉框受窗口大小局限不能完整显示,如何实现像select标签那样下拉