从 javascript 函数填充 DTO 类
Posted
技术标签:
【中文标题】从 javascript 函数填充 DTO 类【英文标题】:Populating DTO class from javascript function 【发布时间】:2013-04-18 20:33:00 【问题描述】:我正在研究一个 dao dto struts 架构 - 基本上我想在 javascript 中的每个更改函数上填充我的 dto。我正在尝试以下代码---
function onchangefunction()
var e = document.getElementById("userSelectList");
strUser = e.options[e.selectedIndex].text;
alert(strUser);
strUser.toString();
var x = document.getElementById("ToLB");
var option = document.createElement("option");
<%
String strUser = request.getParameter("strUser");
ArrayList < SkillSetDTO > skillsetlst = (ArrayList < SkillSetDTO > ) ConfigurationDAO.getInstance().getSkillSetList(strUser);
SkillSetDTO skillsetDTO = new SkillSetDTO();
for (int i = 0; i < skillsetlst.size(); i++)
skillsetDTO = (SkillSetDTO) skillsetlst.get(i);
String skillSet = skillsetDTO.getSkillsets();
%>
option.text = "<%=skillSet%>";
try
// for IE earlier than version 8
x.add(option, x.options[null]);
catch (e)
x.add(option, null);
<%
%>
直到 alert(strUser) 它工作正常,但在那之后就不行了,这里做错了什么?
更新--
好的,我知道了,它不会工作。谁能告诉我如何通过使用 Ajax 请求来解决此代码,我以前从未使用过 ajax 请求... 1)在 ConfigurationDAO 中传递参数 strUser 和调用方法“getSkillSetList”,以便它填充 DTO 类和 2)取回一个从 SkillSetDTO 到 jsp 的数组列表。
【问题讨论】:
您应该在操作中填充列表。你不需要 ajax。 【参考方案1】:这行不通。您正在尝试在您的 javascript 中执行服务器端代码。服务器端代码将运行一次 - 在 JavaScript 运行之前(页面最初呈现时),但不会在 onchange 方法中重新运行。 可以使用服务器端代码来帮助动态构建 javascript,但您不能通过 JavaScript 与之交互。 如果你需要在 JavaScript 代码中与服务器交互,你可以通过 Ajax 来完成
【讨论】:
你能告诉我如何使用 ajax 来解析代码吗,我以前从未使用过 ajax 请求... 1)在 ConfigurationDAO 中调用方法 getSkillSetList 以便它填充 DTO 类和 2)返回从 DTO 到 jsp 的数组列表。以上是关于从 javascript 函数填充 DTO 类的主要内容,如果未能解决你的问题,请参考以下文章
如何在具有枚举字段的实体上使用 JPA CriteriaQuery 填充 DTO 类字符串字段?