gpt4 book ai didi

javascript - 在 Spring MVC 中动态添加表行并绑定(bind)到服务器端

转载 作者:行者123 更新时间:2023-11-30 18:17:04 27 4
gpt4 key购买 nike

我正在使用 Spring MVC3 设计一个应用程序。我必须创建一个 JSP 页面,它有一个数据表和用户,并且可以在 JSP 数据表中添加行。我正在考虑以下两个选项:

  1. 使用 JavaScript 函数在“插入行”按钮上添加一行
  2. 要在“插入行”按钮上提交表单,请转到 Controller 并返回带有额外行的模型属性。

在 JavaScript 方法中,我可以添加行,但这些行在服务器端没有绑定(bind)。我如何使用 Controller 方法实现此目的?

请注意,我不能使用 jQuery 或任何其他 JavaScript 库。

最佳答案

我使用 LazyList 实现了这一点。您需要在模型中有一个惰性列表对象,该对象将包含另一个模型类的对象列表,该模型类将代表每一行中的数据。以下是在模型类中声明 LazyList 的语法。

private List<OperationParameters> operationParameterses = LazyList
.decorate(new ArrayList<OperationParameters>(),
FactoryUtils.instantiateFactory(OperationParameters.class));

OperationParameters 是一个简单的 pojo 类,它的一个对象将代表您的第一行。

一旦在 modelAttribute 类中有了这个惰性列表,那么在 jsp 上,您需要借助简单的 html 输入标签为 OperationParameters pojo 中的每个属性创建控件。您不能使用 spring form taglib 将这些控件绑定(bind)到您的 pojo。您需要按照以下方式给出每个输入标签的名称。

<input type='text' id='operationParameterses0.inputOutputParamName' name='operationParameterses[0].inputOutputParamName'/>

在 name 和 id 属性中,'0' 代表列表的索引。现在,当您提交表单时,您可以将那些插入的行绑定(bind)到 LazyList 对象中的 pojo。

希望对你有帮助。

干杯。

关于javascript - 在 Spring MVC 中动态添加表行并绑定(bind)到服务器端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13007807/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com