如何在单击动作类时访问struts2 treenode值

时间:2012-02-01 09:23:03

标签: struts2

我在我的项目中使用struts2。  我使用DOJO jar代替Treenode

但我不知道如何获得

点击动作类中的Treenode id / label

当我点击“java in action”treenode(叶子节点)时,关注我的“tree.jsp”页面 我希望这个名字能够立即发送到动作类。

<%@taglib  prefix="s"  uri="/struts-tags"%>

<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>

<html>

<head>
   <sx:head/>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
   <title>Example Tree Tag</title>
</head>
<body>
   <h1>Example tree & treenode Tag</h1>
   <div>
      <sx:tree id="books" label="Books" title="test" > 
         <sx:treenode label="Programing books" title="test">
         <sx:treenode label="Java" title="test">
         <sx:treenode id="Thread-Books" label="Core-Java" >
         <sx:treenode id="Thread-Books" label="Java in Action" />
         <sx:treenode id="Thread-Books" label="Core-Java Essentials" />
         <sx:treenode id="Thread-Books" label="Head first Java" />
         <sx:treenode id="Thread-Books" label="Multi-threading" />
         <sx:treenode id="Thread-Books" label="Networking" />
         </sx:treenode>
      </sx:tree>

1 个答案:

答案 0 :(得分:2)

您需要添加以下代码

<script language="JavaScript" type="text/javascript">
dojo.event.topic.subscribe("treeSelected", function treeNodeSelected(node) {
    alert(node);
    dojo.io.bind({
        url: "<s:url value='../roseindia/objectsList2.action'/>?categoryId="+node.node.title,
        load: function(type, data, evt) {
            var divDisplay = dojo.byId("displayIt");
            divDisplay.innerHTML=data;
        },
        mimeType: "text/html"
    });
});

sx:treenode标签作为node.node.title传递