首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从JSP访问JavaScript中的Java对象

问如何从JSP访问JavaScript中的Java对象
EN

Stack Overflow用户
提问于 2011-07-05 09:22:24
回答 3查看 50.2K关注 0票数 10

我在JSP中有一个下拉框,其中列出了一个Java对象(通过MVC控制器的addAttribute访问该对象)。现在,在从下拉框中选择一个选项时,我希望在div中显示所选员工的其他详细信息(例如${employee.employeeCV},${employee.employeeName})。为此,我有一个JavaScript函数(displayCV())。但我不确定该怎么做。

JSP -

代码语言:javascript
复制
<c:forEach items="${employees}" var="employee">
  <option value="${employee.id}" onclick="displayCV();">
    ${employee.employeeName}
  </option>
</c:forEach>

<b>CV:</b>

JavaScript

代码语言:javascript
复制
function displayCV() {
    var valueSelected = $('#employeeList').val();
    var div = $('#candidateDiv');
}

我该怎么做呢?

EN

回答 3

Stack Overflow用户

发布于 2011-07-05 09:36:02

您不能直接从JavaScript访问Java类。您必须在JavaScript (客户端)和Java (服务器)之间使用某种web服务通信。您可以利用onchange事件,它将向服务器发送一个请求以返回XML/JSON,您可以解析它来获取数据(我看到您正在使用jQuery,它已经有了parseJSON方法)并更新DOM中的相应节点。

不过,另一种对多用户不友好的更简单的方法(因为它不能检测更新)是将Java对象“转换”为JavaScript并使用该对象更新数据(仍然使用onchange)。类似于:

代码语言:javascript
复制
// This is JavaScript code written in the JSP
var employees = {
  <c:forEach items="${employees}" var="employee">
  "${employee.id}": {
    name:"${employee.employeeName}",
    cv:"${employee.employeeCV}",
  },
  </c:forEach>
}

现在,当JSP解析它时,它将生成,例如:

代码语言:javascript
复制
var employees = {
  "1": {
    name:"foo",
    cv:"cv1",
  },
  "2": {
    name:"bar",
    cv:"cv2",
  },
}
票数 16
EN

Stack Overflow用户

发布于 2011-07-05 11:17:32

LeleDumbo已经说的here的Meta:

首先,您必须了解JSP是一种服务器端视图技术,而JavaScript通常运行在客户端(浏览器)上。

现在,我们来看看如何解决手头的问题。因此,您可以从JavaScript代码发出一个Ajax请求,它将获取JSON/XML格式的数据。然后,您可以使用JavaScript在浏览器中显示该数据。

进一步阅读: jQuery Ajax API and code samnple snippets

票数 3
EN

Stack Overflow用户

发布于 2017-01-19 16:25:42

在select的onchange事件上调用函数,而不是在options的onclick事件上调用该函数。并使用:

代码语言:javascript
复制
document.getElementById('GrdDamagedstock_tplRowEdit_ctl00_cmbFromBin').options[ele.options.selectedIndex].innerHTML;

以获取选定的值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6577246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档