精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-10
<span jwcid="resetNum@Insert" value="ognl:num" renderTag="true"></span>
这个生成的html中你看一下是不是生成了类似 <span id="resetNum">3</span>之类的,我没测试,应该是不会生成的,因为span为tapestry里默认的tag去输出的,你试一试div。 |
|
返回顶楼 | |
发表时间:2007-09-10
将span改成div,情况还是一样...
页面源码为: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <!-- Application: fruit --> <!-- Page: Test --> <!-- Generated: Mon Sep 10 20:33:33 CST 2007 --> <html> <head> <meta name="generator" content="Tapestry Application Framework, version 4.1.2" /> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title>test</title> <script type="text/javascript">djConfig = {"isDebug":true,"baseRelativePath":"/fruit/app?service=asset&path=%2Fdojo-0.4.3%2F","parseWidgets":false,"locale":"zh-cn"} </script> <script type="text/javascript" src="/fruit/app?service=asset&path=%2Fdojo-0.4.3%2Fdojo.js"></script> <script type="text/javascript"> dojo.require("dojo.logging.Logger"); dojo.log.setLevel(dojo.log.getLevel("WARNING")); </script> <script type="text/javascript"> dojo.registerModulePath("tapestry", "/fruit/app?service=asset&path=%2Ftapestry%2F"); </script> <script type="text/javascript" src="/fruit/app?service=asset&path=%2Ftapestry%2Fcore.js"></script> <script type="text/javascript"> dojo.require("tapestry.namespace"); tapestry.requestEncoding='UTF-8'; </script> </head> <head> </head> <body id="Body"> <p><a id="DirectLink" href="/fruit/app?component=%24DirectLink&page=Test&service=direct&updateParts=resetNum" onclick="return tapestry.linkOnClick(this.href,'DirectLink', false)">Refresh time</a>.</p> </body> </html> <!-- Render time: ~ 16 ms --> 没看到div输出哦... 点击的时候,在控制台那边有输出随机数,事件是有触发的! |
|
返回顶楼 | |
发表时间:2007-09-11
<div jwcid="resetNum@Any"><span jwcid="@Insert" value="ognl:num">6</span></div>
|
|
返回顶楼 | |
发表时间:2007-09-11
谢谢tapestry大哥,可以了!
请问这样写有什么特殊的含义没有?是不是要更新的组件一定要放到div层里面? |
|
返回顶楼 | |
发表时间:2007-09-11
问题终于都找到了,哈哈
原来 是同伴配置的hivemodule.xml出了问题 |
|
返回顶楼 | |
发表时间:2007-09-11
不是一定要放到div里,原理应该是document.getElementbyId之类的函数调用,只要生成的html里有id应该就可以,然后让他根据id找到update的对象,最后利用innerHtml之类的替换,就是ajax那一套。
|
|
返回顶楼 | |
发表时间:2007-09-11
<span jwcid="time@Insert" value="ognl:num" inherit-informal-parameters="yes" id="time" renderTag="true">time</span>
这样是么?为什么在一个项目里面这样写可以生成span标签,而另一个却不行?用同样的包,hivemodule、web、application配置几乎相同!一样的代码...... 找了很久,还是找不出原因!望大哥再助!:( |
|
返回顶楼 | |
发表时间:2007-09-11
原因找到了...在页面类那边,
原代码是: public abstract void setNum(Integer num); 改为: public abstract void setNum(int num); Integer类型在页面中是否就取不到值?有点不理解... |
|
返回顶楼 | |