我可以用thymeleaf设置data-*属性吗?
据我从thymeleaf文件中了解到,我尝试过:
<div th:data-el_id="${element.getId()}"> <!-- doesn't work -->
<div data-th-el_id="${element.getId()}"> <!-- doesn't work -->
Run Code Online (Sandbox Code Playgroud) 我试图做相同的
if ( object1.class == object2.class )
{
//do something
}
Run Code Online (Sandbox Code Playgroud)
这当然不起作用,我可以忽略哪种方法?
我正在使用Thymeleaf来处理html模板,我知道如何从我的控制器中追加内联字符串,但现在我想在页面中附加一段html代码.
例如,让我留在我的java应用程序中:
String n="<span><i class=\"icon-leaf\"></i>"+str+"</span> <a href=\"\"></a>\n";
final WebContext ctx = new WebContext(request, response,
servletContext, request.getLocale());
ctx.setVariable("n",n);
Run Code Online (Sandbox Code Playgroud)
我需要在html页面中编写什么内容,以便将其替换为"n"变量并作为html代码处理而不是将其编码为文本?
jQuery或JavaScript可以与正则表达式一起使用来选择具有相似id的多个元素吗?
我有以下段落:
<p id="item5_2"> A </p>
<p id="item9_5"> B </p>
<p id="item14_2"> C </p>
Run Code Online (Sandbox Code Playgroud)
我想更改id开头item
和结尾的段落内容2
.
我使用了以下jQuery:
$("#item[\d]*2").html("D");
Run Code Online (Sandbox Code Playgroud)
但它不起作用.我怎样才能让它发挥作用?
让我们说我们必须使用这段无聊的代码:
ArrayList<Long> ids = new ArrayList<Long>();
for (MyObj obj : myList){
ids.add(obj.getId());
}
Run Code Online (Sandbox Code Playgroud)
切换到Java 8后,我的IDE告诉我我可以用这个代码替换collect call
它,并自动生成:
ArrayList<Long> ids = myList.stream().map(MyObj::getId).collect(Collectors.toList());
Run Code Online (Sandbox Code Playgroud)
但是它给了我这个错误:
Steam中的collect(java.util.stream.Collector)无法应用于:(java.util.stream.Collector,capture,java.util.List>)
我试图铸造参数,但它给我不确定的A
和R
,而IDE没有给任何建议.
我很好奇你collect call
在这种情况下如何使用,我找不到任何可以指导我的信息.任何人都可以光明吗?
下面是我正在使用的输入下拉列表的简化版本.
它的作用的基本概要是:如果您专注于输入,则会出现一个下拉列表.如果单击下拉列表中的某个选项,该选项将填充输入并且下拉列表将消失.这是使用取得了onfocus
和功能我叫dropdown();
和undropdown();
.
我处于两难境地,当有人点击其他地方时,我无法让下拉消失.如果我使用onblur
它,它会成功隐藏下拉列表,但如果你单击一个选项它不会填充输入,这是因为,该onblur
函数首先运行,因此,该input();
函数不会运行,因为下拉列表已经隐藏.
如果你onclick
在body标签或其他父标签上放置一个,它会认为onfocus
是一个click,它运行的是dropdown();
函数,然后是undropdown();
函数,因此函数重叠后永远不会出现下拉列表.
我很感激帮助找出如何订购功能,以便它们以正确的顺序执行而不会相互重叠.
function input(pos) {
var dropdown = document.getElementsByClassName('drop');
var li = dropdown[0].getElementsByTagName("li");
document.getElementsByTagName('input')[0].value = li[pos].innerHTML;
undropdown(0);
}
function dropdown(pos) {
document.getElementsByClassName('content')[pos].style.display = "block"
}
function undropdown(pos) {
document.getElementsByClassName('content')[pos].style.display = "none";
}
Run Code Online (Sandbox Code Playgroud)
.drop {
position: relative;
display: inline-block;
vertical-align: top;
overflow: visible;
}
.content {
display: none;
list-style-type: none;
border: 1px solid #000; …
Run Code Online (Sandbox Code Playgroud)考虑以下两个表:
Project ( id, project_name)
Status ( id, id_project, status_name)
其中Status
包含a所有的状态Project
.
假设我们要查询最新状态名为"new"的所有项目.我想出的Sql查询是:
SELECT q.id_project FROM status q
WHERE q.status_name like 'new'
AND q.id IN (
SELECT TOP 1 sq.id from status sq
WHERE q.id_project = sq.id_project
ORDER BY sq.id DESC )
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用Criteria API复制上述查询,我注意到类CriteriaQuery有方法,orderBy
但类Subquery没有.
我到目前为止提出的标准查询是:
CriteriaQuery<Project> q = criteriaBuilder.createQuery(Project.class);
Root<Status> qFrom = q.from(Status.class);
Subquery<Integer> sq = q.subquery(Integer.class);
Root<Status> sqFrom = sq.from(Status.class);
sq.select(sqFrom.get(Status_.id))
.where(criteriaBuilder.equal(sqFrom.get(Status_.project), qFrom.get(Status_.project))
Run Code Online (Sandbox Code Playgroud)
我被困在这里,因为Subquery sq
没有任何方法可以对结果进行排序并只返回最新结果.
排序子查询以便在上述场景中获得所需结果的替代方法是什么?
我有一个使用百里叶模板的页面,在使用内联脚本时,我在页面加载时遇到以下错误:
org.xml.sax.SAXParseException; lineNumber:270; columnNumber:85; 元素的内容必须由格式良好的字符数据或标记组成.
第270行的代码
<script type="text/javascript" >
window.jQuery || document.write("<script src='assets/js/jquery-2.0.3.min.js'>"+"<"+"/script>");
</script>
Run Code Online (Sandbox Code Playgroud)
我试过用document.write替换"<",">"符号<
>
,不再发生异常但是脚本不再加载了
我正在使用此代码在html中生成一个树,问题是,每次刷新页面时树都会展开.
我想创建它,以便当我打开页面时,一些分支将被展开,一些分支将被折叠,具体取决于它具有的属性.
例如:
<span><i class="icon-plus-sign"></i> Parent 1</span>
<ul> childrens go here
</ul>
<span><i class="icon-minus-sign"></i> Parent 2</span>
<ul> childrens go here
</ul>
Run Code Online (Sandbox Code Playgroud)
当我打开页面时,我想看到父母2的孩子,而不是父母1的孩子.
我是html的新手,对css和javascript全新.所以任何建议都会有所帮助.
我正在尝试制作一个css类,它会为第一个找到的具有特定标签的元素提供背景颜色.
这个CSS
.blue p:first-of-type {
background-color:#2E9AFE;
}
Run Code Online (Sandbox Code Playgroud)
作品例如1:
<div class="blue">
<p>element 1</p>
<p>element 2</p>
<p>element 2</p>
</div>
Run Code Online (Sandbox Code Playgroud)
不适用于示例2:
<div class="blue">
<ul>
<li><p>Parent 1</p>
<ul>
<li><p>Element 1.1</p></li>
<li><p>Element 1.2</p></li>
</ul>
</li>
</ul>
</ul>
Run Code Online (Sandbox Code Playgroud)
在示例2中,带有标记的第一个元素p
是Parent 1
,但是我的代码为每个元素着色.为什么?
html ×5
javascript ×5
java ×4
css ×3
thymeleaf ×3
jquery ×2
cdata ×1
class ×1
collect ×1
comparison ×1
criteria ×1
css3 ×1
hibernate ×1
input ×1
java-8 ×1
java-stream ×1
jpa ×1
regex ×1
sql-server ×1