如何从JSP访问javascript中的java对象?

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

JSP –

  ${employee.employeeName}   CV: 

JAVASCRIPT –

 function displayCV() { var valueSelected = $('#employeeList').val(); var div = $('#candidateDiv'); } 

请问有人帮我吗?

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

另一个更容易但不是多用户友好(因为它无法检测更新)是将Java对象“转换”为JavaScript并使用该对象更新数据(仍然使用onchange)。 就像是:

 // this is JavaScript code written in the JSP var employees = {  "${employee.id}": { name:"${employee.employeeName}", cv:"${employee.employeeCV}", },  } 

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

 var employees = { "1": { name:"foo", cv:"cv1", }, "2": { name:"bar", cv:"cv2", }, } 

LeleDumbo已经在这里说过的元。

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

现在,您如何解决手头的问题。 因此,您可以从JavaScript中发出AJAX请求,这将以JSON / XML格式获取数据。 然后,您可以使用JavaScript在浏览器中显示该数据。

进一步阅读:

  • jQuery AJAX API
  • jQuery AJAX入门
  • 使用jQuery文章轻松实现Ajax

在select的onchange事件上调用该函数而不是onclick of oprions。 并使用

 document.getElementById('GrdDamagedstock_tplRowEdit_ctl00_cmbFromBin').options[ele.options.selectedIndex].innerHTML; 

获得选定的价值。