当前位置: 首页 > 知识库问答 >
问题:

计算Thymeleaf属性中的多个表达式

夔波
2023-03-14

我对Thymeleaf有点陌生,如果这是一个新的语法错误,我深表歉意。我试图让Thymeleaf使用属性在同一个th中执行多个语句。

<div th:with="url = ${#httpServletRequest.getRequestURL()}, url = ${url.substring(0, url.indexOf('error'))}"></div>

但这不是正确的语法。

这可能吗,如果可能,我试图完成的正确语法是什么?

编辑:我已经修复了下面部分中的语法错误,现在我得到了另一个错误。

尝试将其一分为二,但似乎在SpringEL表达式中未正确填充url变量。

<div th:with="url = ${#httpServletRequest.getRequestURL()}">
    <div th:with="url = ${url.substring(0, url.indexOf('error'))}"></div>
</div>

共有1个答案

卫逸春
2023-03-14

我将参考第二个版本。

http://www.tutorialspoint.com/java/java_string_indexof.htm

int indexOf(String str):返回指定子字符串第一次出现的该字符串内的索引。如果它不是作为子字符串出现,则返回-1。

所以我认为错误没有发生。

那么你是在尝试

url.substring(0,-1)

你会得到一个错误。

 类似资料:
  • 使用DevTools控制台的求值计算功能,探测页面上任何项的状态。 DevTools控制台允许您以特别的方式了解页面中项的状态。他可以计算JavaScript的任何表达式,控制台本身支持几个功能。 TL;DR 计算键入的表达式。 使用其中一个快捷方式选择元素。 使用 inspect()检查DOM元素和JavaScript对象。 使用$0 - 4访问最近选择的元素和对象。 操作表达式 在控制台中输入

  • 这是我的清单: 我想按对列表进行排序,如果相等,则按排序,如果相等,则按排序。但是到目前为止,我只能使用Lambda表达式按一个属性排序: 如果我尝试 事实证明是错误的。。。

  • 我目前正在用Spring Boot和Thymeleaf做一个项目,以了解两者的基本知识。现在我被一个问题卡住了,这个问题看起来很容易,但我无法掌握它的窍门。我只是有一个名为“电影”的现有对象,我想编辑它并将覆盖的版本保存到数据库中。现在我所要做的就是用电影的数据填充一个表单。这很好,但问题是,因为一部电影可以有多个演员,所以我在每个电影对象中保存了一个演员的数组列表,其中有一个名为name的属性。

  • 主要内容:示例在MS Access中,表达式就像Excel中的公式。 这包括一些可以单独使用或组合使用以产生结果的元素。 表达式可以包括运算符,常量,函数和标识符。 表达式可用于执行各种任务,从检索控件的值或将查询条件提供给查询来创建计算的控件和字段,或者为报表定义组级别。 在本章中,我们将着重于创建一个称为计算表达式的非常具体的表达式。创建几个计算的字段,这些字段将计算并显示不存储在数据库本身任何位置的数据,

  • 当我们想临时修攺某个变量的值或查看其内部方法返回值的时候,可以使用计算表达式功能. Android Studio中提供了一个计算表达式和代码片段的功能, 使用起来非常方便.它除了支持正则表达式计算以外,还支持操作表达式,匿名表达式和内部类的计算. 两种计算模式: Expression Mode: 计算单行表达式 Code Fragment Mode: 计算代码片段, 我们可以对声明、赋值、循环和i

  • 主要内容:实例 1,实例 2,computed vs methods,实例 3,computed setter,实例 4计算属性关键词: computed。 计算属性在处理一些复杂逻辑时是很有用的。 可以看下以下反转字符串的例子: 实例 1 <div id="app"> {{ message.split('').reverse().join('') }} </div> 实例 1 中模板变的很复杂起来,也不容易看懂理解。 接下来我们看看使用了计算属性的实例: 实例 2 <div id="app">