Java 按给定顺序高亮显示数组的元素
我在一个列表中按给定顺序排列了一个句子数组,另一个数组中有第一个数组中另一个顺序排列的部分句子。我在SpringMVC框架内Java 按给定顺序高亮显示数组的元素,java,jquery,arrays,jstl,Java,Jquery,Arrays,Jstl,我在一个列表中按给定顺序排列了一个句子数组,另一个数组中有第一个数组中另一个顺序排列的部分句子。我在SpringMVC框架内 ArrayList<String> first = new ArrayList<>(); ArrayList<String> second = new ArrayList<>(); Integer len1; Integer len2; first.add("Marry "); first.add("had "); fir
ArrayList<String> first = new ArrayList<>();
ArrayList<String> second = new ArrayList<>();
Integer len1;
Integer len2;
first.add("Marry ");
first.add("had ");
first.add("a ");
first.add("little lamb.");
second.add("Marry "); //first added
second.add("little lamb."); //second added
len1=first.length();
len2=second.length();
model.addAttribute("first", first);
model.addAttribute("second", second);
model.addAttribute("len1",len1);
model.addAttribute("len2",len2);
ArrayList first=new ArrayList();
ArrayList second=新的ArrayList();
整数len1;
整数len2;
第一,加上(“结婚”);
第一.加入(“had”);
第一,添加(“a”);
首先,加上(“小羊羔”);
第二,加上(“结婚”)//首先添加
第二,加上(“小羊羔”)//第二个补充
len1=第一个.length();
len2=第二个.length();
model.addAttribute(“first”,first);
model.addAttribute(“第二”,第二);
model.addAttribute(“len1”,len1);
model.addAttribute(“len2”,len2);
我要做的是显示第一个数组的元素,并高亮显示与第二个数组匹配的元素,但要高亮显示,这样我就可以通过使用渐变来区分哪个是第一个元素,哪个是第二个元素。
我这样显示第一个数组
<c:forEach var="i" items="${first}" end="${len1}">
<c:out value="${i}"/>
</c:forEach>
我试着在forEach中这样做,但我不确定这样做的方式,至少不是梯度。
最终结果应该是
玛丽有一只小羊羔
若梯度是从红色到黄色,那个么“玛丽”应该突出显示为红色和“小羊羔”黄色。我无法找到一个解决方案,使它能够对每一行应用渐变,这主要是因为css渐变是从上到下或从左到右应用的,如果文本在列中断开,渐变将在整个块上从左到右应用,而不是使每一行都具有渐变。 我用了黑体字 这就是解决办法
<c:forEach var="i" items="${first}" >
<c:choose><c:when test="${second.contains(i)}">
<strong ><c:out value="${i}"/></strong>
</c:when><c:otherwise>
<c:out value="${i}"/>
</c:otherwise></c:choose>
</c:forEach>
https://stackoverflow.com/questions/35022587/highlight-text-in-jstl