【问题标题】:populate textfield on selecting dropdown struts2在选择下拉struts2时填充文本字段
【发布时间】:2012-05-28 14:41:26
【问题描述】:

我的 jsp 页面中有一个文本 <s:select>

现在我要做的是当有人从这个下拉列表中选择一个值时, 我需要调用我的操作类以根据下拉选择获取一些值。

现在这个值(我从我的 actionclass 中得到)应该显示在这个下拉列表下方的 <s:textfield> 中。

请帮忙!!

【问题讨论】:

  • <s:> 到底是什么,如果这是特定于 JSP 的,你能解释一下它实际生成的 HTML 吗?
  • @Hawken: <s:> 是由框架创建者创建的 struts2 标签,以提高开发人员的生产力,因为它提供了与框架的集成。最终这些标签将生成正常的 HTML,因此 <s:select> 或最后的<s:textfield> 将被转换为HTML 为selecttext field 标签

标签: javascript ajax jsp struts2


【解决方案1】:

您必须使用 Ajax 的强大功能。您有多种选择。

  1. 用户简单的 Javascript。
  2. 使用任何 javascript 框架,如 jquery、DOJO 等

通过单击/更改甚至选择标记绑定您的代码并向 S2 操作发送一个简单的请求。您可以使用 Stream result 从 S2 操作发送回数据,或者更好(在我看来)发送从您的操作类和用户 Jquery 内置功能返回 JSON 数据以在 JSP 解析 JSON 数据

用户S2 JSON plugin 从 Action 和 JSP 发送和接收 JSON 数据,让生活更轻松。

请按照本教程了解如何将 JQuery 与 JSON 和 struts2 一起使用

更新

您需要在 Ajax 和 JQuery 的 JSP 代码中执行类似的操作

var selectedState = document.getElementById("selectboxid");
        var statedata = selectedState.options[selectedState.selectedIndex].value;
        var formInput='state='+statedata;
$.getJSON('search/dropDownRenderer',formInput,function(data) {
}

【讨论】:

  • 嘿@Umesh .. 谢谢你的回答.. 它很有帮助......但是你能告诉我here 在javascript代码中如何将值发送到actionclass,以便我可以得到数据据此..
  • @TusharAgarwal:在它形成的代码中已经提交。你可以创建一个查询字符串,如myAction.action?myData="value"。你需要一个名为 myData 的属性及其受人尊敬的 getter 和 setter,S2 将将数据本身放在您的操作类的属性中
  • 我没有提交表单。这就是为什么我想使用 ajax 以便 ii 可以填充字段
猜你喜欢
  • 1970-01-01
  • 2016-07-08
  • 1970-01-01
  • 2015-08-12
  • 2012-05-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多