0

我有一个<ul>动态填充元素的<li>元素。我希望控制这些<li>元素,我的意思是让它们能够设置包含内容的我的 bean 的属性。更明确地说:一旦我单击 a <li>,我希望其中的文本成为属性的值。

这是无序列表生成的代码:

<div data-role="content">   

<ul data-role="listview" data-inset="true" data-filter="true" data-filter-reveal="true" data-filter-placeholder="Région...">
  <%
     for (int i = 0; i < mdjsBean.getRegionList().size(); i++) {
        String region_ = (String) mdjsBean.getRegionList().get(i) ;
  %>
    <li><a><%= region_ %></a></li>
   <%}%>
</ul>

我希望的是类似于 JSF 的selectOneMenu标记,它为您提供选择并且您选择一个(其中的值将存储在您的 bean 属性中)。

关于我们如何在 JSP 和<ul>and<li>标记中做到这一点的任何想法?

我的要求

在此处输入图像描述

如图所示,它是 jQuery(mobile) 的自动完成小部件,就我而言,到目前为止,我成功地检索了 DB 的“区域”值并将它们排列在列表视图中。在 textarea 中键入 anyting,listview 开始过滤区域。我现在希望的是单击该列表视图的一个元素并让它mdjsBean.region用选择的区域填充属性(顺便说一句,regionList 是所有区域的列表,这个列表是从数据库中填充的,在 java 函数的帮助下)。

提前致谢。

4

1 回答 1

2

我在这里看不到任何不是简单的 JS 和 Ajax 的东西,但是在客户端没有“bean”。您可以使用 DWR(即 JS 和 Ajax)来伪造它。

如果没有 DWR,只需将选定的值发送到服务器,返回 JSON 以构建新选项,或者返回 HTML 并将其直接注入 DOM。(实际上与 DWR 相同,但它被包裹在看起来像 Java 的 JS 中。)

根据您的需要,研究为您完成此过程的框架可能是一个好主意,尽管 IMO 对于了解底层发生的事情很重要。

它没有扭曲,根本不可能:JS=client,bean=server。如果您想在不刷新页面的情况下使用服务器端数据更新客户端,则可以选择 Ajax 忽略长连接等)。

于 2013-06-16T12:56:03.937 回答