如何访问javascript中的内部类字段

时间:2009-09-09 10:37:20

标签: java javascript jsp

我有一个名为SelectProdLineAssociationForm

的内部类(静态)

我也发了这样的声明 -

public SelectProdLineAssociationForm selectProdLineAssociationForm =
  new SelectProdLineAssociationForm();

现在在onclick事件上我想在内部类中设置一个值 所以我

document.forms[0].selectProdLineAssociationForm.selectedProdLineAssociationKey =
  selectedProdLineAssociationKey;

其中selectedProdLineAssociationKey在javascript方法中传递 然后它给出了javascript错误 document.forms[0].selectProdLineAssociationForm未定义 任何人都可以告诉我为什么以及如何解决这个问题

2 个答案:

答案 0 :(得分:1)

您无法从javascript访问java方法或属性。 Javascript纯粹是客户端。

你可以这样做的一种方法是将属性打印到一个块中,然后你可以从javascript访问它,例如:

<script>
var selectedProdLineAssociationKey  = '<%= SelectProdLineAssociationForm.selectProdLineAssociationForm.toString();=%>';
//...you can then use this variable else where in your script block
</script>

但是你将无法更改该值,除非你将其发回(并且具有在服务器端更改它的逻辑)。

答案 1 :(得分:0)

我要去Struts这里......(正如Massimiliano Fliri所说,你必须提供更多细节)。

您必须验证输入标记在HTML中的命名方式。根据您编写JSP的方式,您可能有一个名为selectProdLineAssociationForm.selectedProdLineAssociationKey的输入标记(一个元素)。

此代码:

document.forms[0].selectProdLineAssociationForm.selectedProdLineAssociationKey

表示您的表单包含selectProdLineAssociationForm,而selectedProdLineAssociationKey又包含{{1}}(两个元素)。

这只是猜测你在做什么。如果您需要更多帮助,您必须提供更多信息。