xsl问题,急!!!请多帮忙!

02-12-03 nmg

大家好:
我遇到一个问题,诚恳的向各位朋友请教。
  在xsl中如何得到xml中的值
  <a href="../../jsp/user/editUsers.jsp?userId=此处应该如何写" target="right">修改</a>
  userId应得到listUsers.xml文件中userId element的值
  不知如何才能得到:(环境:win2000,tomcat3.2,IE6.0)
  
  xml文件如下:
  文件名:listUsers.xml
 <?xml version="1.0" encoding="GB2312"?> 
<?xml-stylesheet type="text/xsl" href="listUsers.xsl"?> 
 <Data> 
  <anRecord> 
    <userId>1</userId>
    <userName>userName1</userName> 
    <password>password1</password> 
  </anRecord> 
  <anRecord> 
    <userId>2</userId>
    <userName>userName2</userName> 
    <password>password2</password> 
  </anRecord> 
  <anRecord> 
    <userId>3</userId>
    <userName>userName3</userName> 
    <password>password3</password> 
  </anRecord> 
  </Data> 
  
  xsl文件如下:
  文件名:listUsers.xsl
  <?xml version="1.0" encoding="GB2312"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
 
 <xsl:template match ="/">
 
 <html> 
  <head>
 <META content="text/html; charset=gb2312" http-equiv="Content-Type"/>
 <LINK href="../jsp/css/css1.css" rel="stylesheet" type="text/css"/>
 </head>
 <body bgColor="lavender">
 <form action="../../servlet/myself.generatejavacode.user.UsersServlet"
id="form1" method="post" name="form1">
 <table border="1" bordercolordark="ffffff" bordercolorlight="#666666" cellpadding="0" cellspacing="0" width="460" align="center">
      <tr bgcolor="#666699">
      <td width ="30%" class="word2">
          <div align="center">userId</div>
      </td>
      <td width ="30%" class="word2">
        <div align="center">userName</div>
      </td>
      <td width ="30%" class="word2">
        <div align="center">password</div>
      </td>
      </tr>

      <xsl:for-each select="Data/anRecord">
      
      
      <tr bgcolor="white">
      <td width="150" height="6"></td>
      <td width="150"></td>
      <td width="150"></td>
      </tr>
      <tr>
        <td width="150" bgcolor="FFFFFF">
          <input type="checkbox" name="checkbox">
    		<xsl:attribute name="value"><xsl:value-of select="userId" />
   		</xsl:attribute>
	  </input>


          <xsl:value-of select="userId" />
        </td>
        <td width="150" bgcolor="FFFFFF"><xsl:value-of select="userName" /></td>
        <td width="150" bgcolor="FFFFFF"><xsl:value-of select="password" />
        
        <xsl:attribute name="id">
        <xsl:value-of select="userId" />
   		</xsl:attribute>
        <a href="../../jsp/user/editUsers.jsp?userId=此处应该如何写" target="right">修改</a>
        </td>
      </tr>
      </xsl:for-each>

    </table>
    <input id="submit" name="submit" style="HEIGHT: 35px; WIDTH: 80px" type="submit" value="delete"></input>
    </form>
  </body>
  </html>
</xsl:template>
</xsl:stylesheet>

<p class="indent">

nmg
2002-12-04 09:44
请大家多多指教那个xsl的问题,不胜感激!~!

ERP观念的家庭应用

一天中午,丈夫在外给家里打电话:「亲爱的老婆,晚上我想带几个同事回家吃饭可以吗?」(订货意向)

妻子:「当然可以,来几个人,几点来,想吃什么菜?」

丈夫:「6个人,我们7点左右回来,准备些酒、烤鸭、西红柿炒蛋、凉菜、蛋花汤…… 你看可以吗?」(商务沟通)

妻子:「没问题,我会准备好的,」(订单确认)

妻子记录下需要做的菜单(MPS计划),

具体要准备的菜:鸭 酒 西红柿 鸡蛋 调料──(BOM物料清单),

发现需要:1只鸭,5瓶酒,4个西红柿,──(BOM展开),

炒蛋需要6个鸡蛋,蛋花汤需要4个鸡蛋(共享物料)。

打开冰箱一看(库房),只剩下2个鸡蛋(缺料)。

来到自由市场,妻子:「请问鸡蛋怎么卖?」(采购询价)

小贩:「1个1元,半打5元,1打9.5元。」

妻子:「我只需要8个,但这次买1打。」(经济批量采购)

妻子:「这有一个坏的,换一个。」(验收,退料,换料)

回到家中,准备洗菜、切菜、炒菜──(工艺路线),厨房中有燃气、微波炉、电饭堡──(工作中心)。

妻子发现拔鸭毛最费时间(瓶颈工序,关键工艺路线),

用微波炉自己做烤鸭可能就来不及(产能不足),

于是决定在楼下的餐厅里买现成的(产品委外)。

下午4点,电话铃又响:「妈妈,晚上几个同学想来家里吃饭,你帮准备一下。」(紧急订单)

「好的,儿子,你们想吃什么,爸爸晚上也有客人,你愿意和他们一起吃吗?」

「菜你看着办吧,但一定要有西红柿炒鸡蛋。我们不和大人一起吃,6:30左右回来。」(呵呵,不能并单处理)

「好的,肯定让你们满意。」(订单确认)

鸡蛋又不够了,打电话叫小贩送来。(紧急采购)

6:30,一切准备就绪,可烤鸭还没送来,急忙打电话询问:「我是李太太,怎么订的烤鸭还没送来。」(采购委外单跟催)

「不好意思,送货的人已经走了,可能是堵车吧,马上就会到的。」门铃响了,
「李太,这是您要的烤鸭。请在单上签一个字。」(验收、入库、转应付帐款)

6:45,女儿的电话:「妈妈,我想现在带几个朋友回家吃饭可以吗?」(呵呵,又是紧急订购意向,要求现货)

「不行呀,女儿,今天妈妈已经需要准备两桌饭了,时间实在是来不及,真的非常抱歉,下次早点说,一定给你们准备好。」(哈哈,这就是ERP的使用局限,要有稳定的外部环境,要有一个起码的提前期)

送走了所有客人,疲惫的妻子坐在沙发上对丈夫说:「亲爱的,现在咱们家请客的频率非常高,应该要买些厨房用品了(设备采购),最好能再雇个小保姆(连人力资源系统也有接口了)。」

丈夫:「家里你做主,需要什么你就去办吧。」(通过审核)

妻子:「还有,最近家里花销太大,用你的私房钱来补贴一下,好吗?」(哈哈哈哈,最后就是应收货款的催要。还可再加上成本核算,总帐,决策分析等等)。

例如……送走了所有客人,妻子拿着计算器,准确地算出了今天的各项成本(成本核算)和节余原材料(车间退料),并计入了日记帐(总帐),把结果念给丈夫听(给领导报表),丈夫说道「值得,花了145.49元,请了好几个朋友,感情储蓄帐户增加了若干」(经济效益分析)。



nmg
2002-12-04 09:52
xsl问题,急!!!请多帮忙!为表感谢,奉献几个故事。!看玩别忘了回答我的那个xsl的问题

1、陈阿土
  陈阿土是台湾的农民,从来没有出过远门。攒了半辈子的钱,终于参加一个旅游团出了国。国外的一切都是非常新鲜的,关键是,陈阿土参加的是豪华团,一个人住一个标准间。这让他新奇不已。早晨,服务生来敲门送早餐时大声说:“GOOD MORNING SIR!”陈阿土愣住了。这是什么意思呢?在自己的家乡,一般陌生的人见面都会问:“您贵姓?”于是陈阿土大声叫道:“我叫陈阿土!”如是这般,连着三天,都是那个服务生来敲门,每天都大声说:“GOOD MORNING SIR!”而陈阿土亦大声回道:“我叫陈阿土!”但他非常的生气。这个服务生也太笨了,天天问自己叫什么,告诉他又记不住,很烦的。终于他忍不住去问导游,“GOOD MORNING SIR!”是什么意思,导游告诉了他,天啊!!真是丢脸死了。陈阿土反复练习“GOOD MORNING SIR!”这个词,以便能体面地应对服务生。又一天的早晨,服务生照常来敲门,门一开陈阿土就大声叫道:“GOOD MORNING SIR!”与此同时,服务生叫的是:“我是陈阿土!”
  这个故事告诉我们,人与人交往,常常是意志力与意志力的较量。不是你影响他,就是他影响你,而我们要想成功,一定要培养自己的影响力,只有影响力大的人才可以成为最强者。

  2、表演大师
  有一位表演大师上场前,他的弟子告诉他鞋带松了。大师点头致谢,蹲下来仔细系好。等到弟子转身后,又蹲下来将鞋带解松。有个旁观者看到了这一切,不解地问:“大师,您为什么又要将鞋带解松呢?”大师回答道:“因为我饰演的是一位劳累的旅者,长途跋涉让他的鞋事松开,可以通过这个细节表现他的劳累憔悴.”“那你为什么不直接告诉你的弟子呢?”“他能细心地发现我的鞋带松了,并且热心地告诉我,我一定要保护他这种热情的积极性,及时地给他鼓励,至于为什么要将鞋带解开,将来会有更多的机会教他表演,可以下一次再说啊。”
  人一个时间只能做一件事,懂抓重点,才是真正的人才。

  3、鹦鹉
  一个人去买鹦鹉,看到一只鹦鹉前标:此鹦鹉会两门语言,售价二百元。另一只鹦鹉前则标道:此鹦鹉会四门语言,售价四百元。该买哪只呢?两只都毛色光鲜,非常灵活可爱。这人转啊转,拿不定主意。结果突然发现一只老掉了牙的鹦鹉,毛色暗淡散乱,标价八百元。这人赶紧将老板叫来:这只鹦鹉是不是会说八门语言?店主说:不。这人奇怪了:那为什么又老又丑,又没有能力,会值这个数呢?店主回答:因为另外两只鹦鹉叫这只鹦鹉老板。
  这故事告诉我们,真正的领导人,不一定自己能力有多强,只要懂信任,懂放权,懂珍惜,就能团结比自己更强的力量,从而提升自己的身价。相反许多能力非常强的人却因为过于完美主义,事必躬亲,什么人都不如自己,最后只能做最好的攻关人员,销售代表,成不了优秀的领导人。

  4、金人

  曾经有个小国的人到中国来,进贡了三个一模一样的金人,金壁辉煌,把皇帝高兴坏了。可是这小国的人不厚道,同时出一道题目:这三个金人哪个最有价值?皇帝想了许多的办法,请来珠宝匠检查,称重量,看做工,都是一模一样的。怎么办?使者还等着回去汇报呢。泱泱大国,不会连这个小事都不懂吧?最后,有一位退位的老大臣说他有办法。皇帝将使者请到大殿,老臣胸有成足地拿着三根稻草,插入第一个金人的耳朵里,这稻草从另一边耳朵出来了。第二个金人的稻草从嘴巴里直接掉出来,而第三个金人,稻草进去后掉进了肚子,什么响动也没有。老臣说:第三个金人最有价值!使者默默无语,答案正确。

  这个故事告诉我们,最有价值的人,不一定是最能说的人。老天给我们两只耳朵一个嘴巴,本来就是让我们多听少说的。善于倾听,才是成熟的人最基本的素质。

  5、辞职
  A对B说:“我要离开这个公司。我恨这个公司!”B建议道:“我举双手赞成你报复!!破公司一定要给它点颜色看看。不过你现在离开,还不是最好的时机。”A问:为什么?B说:“如果你现在走,公司的损失并不大。你应该趁着在公司的机会,拼命去为自己拉一些客户,成为公司独挡一面的人物,然后带着这些客户突然离开公司,公司才会受到重大损失,非常被动。”A觉得B说的非常在理。于是努力工作,事遂所愿,半年多的努力工作后,他有了许多的忠实客户。再见面时B问A:现在是时机了,要跳赶快行动哦!A淡然笑道:老总跟我长谈过,准备升我做总经理助理,我暂时没有离开的打算了。
  其实这也正是B的初衷。一个人的工作,永远只是为自己的简历。只有付出大于得到,让老板真正看到你的能力大于位置,才会给你更多的机会替他创造更多利润。

  6、选择

  有三个人要被关进监狱三年,监狱长给他们三个一人一个要求。美国人爱抽雪茄,要了三箱雪茄。法国人最浪漫,要一个美丽的女子相伴。而犹太人说,他要一部与外界沟通的电话。
三年过后,第一个冲出来的是美国人,嘴里鼻孔里塞满了雪茄,大喊道:“给我火,给我火!”原来他忘了要火了。接着出来的是法国人。只见他手里抱着一个小孩子,美丽女子手里牵着一个小孩子,肚子里还怀着第三个。最后出来的是犹太人,他紧紧握住监狱长的手说:“这三年来我每天与外界联系,我的生意不但没有停顿,反而增长了200%,为了表示感谢,我送你一辆劳施莱斯!”
  这个故事告诉我们,什么样的选择决定什么样的生活。今天的生活是由三年前我们的选择决定的,而今天我们的抉择将决定我们三年后的生活。我们要选择接触最新的信息,了解最新的趋势,从而更好的创造自己的将来。

  7、老虎

  两个人在森林里,遇到了一只大老虎。A就赶紧从背后取下一双更轻便的运动鞋换上。B急死了,骂道:“你干嘛呢,再换鞋也跑不过老虎啊!”A说:“我只要跑得比你快就好了。”
  二十一世纪,没有危机感是最大的危机。特别是入关在即,电信,银行,保险,甚至是公务员这些我们以为非常稳定和有保障的企业,也会面临许多的变数。当更多的老虎来临时,我们有没有准备好自己的跑鞋?

  8、赶考
  有位秀才第三次进京赶考,住在一个经常住的店里。考试前两天他做了三个梦,第一个梦是梦到自己在墙上种白菜,第二个梦是下雨天,他戴了斗笠还打伞,第三个梦是梦到跟心爱的表妹脱光了衣服躺在一起,但是背靠着背。这三个梦似乎有些深意,秀才第二天就赶紧去找算命的解梦。算命的一听,连拍大腿说:“你还是回家吧。你想想,高墙上种菜不是白费劲吗?戴斗笠打雨伞不是多此一举吗?跟表妹都脱光了躺在一张床上了,却背靠背,不是没戏吗?”
秀才一听,心灰意冷,回店收拾包袱准备回家。店老板非常奇怪,问:“不是明天才考试吗,今天你怎么就回乡了?”秀才如此这般说了一番,店老板乐了:“哟,我也会解梦的。我倒觉得,你这次一定要留下来。你想想,墙上种菜不是高种吗?戴斗笠打伞不是说明你这次有备无患吗?跟你表妹脱光了背靠靠躺在床上,不是说明你翻身的时候就要到了吗?”秀才一听,更有道理,于是精神振奋地参加考试,居然中了个探花。

  积极的人,象太阳,照到哪里哪里亮,消极的人,象月亮,初一十五不一样。想法决定我们的生活,有什么样的想法,就有什么样的未来。

  9、骆驼
  在动物园里的小骆驼问妈妈:“妈妈妈妈,为什么我们的睫毛那么地长?”骆驼妈妈说:“当风沙来的时候,长长的睫毛可以让我们在风暴中都能看得到方向。”小骆驼又问:“妈妈妈妈,为什么我们的背那么驼,丑死了!”骆驼妈妈说:“这个叫驼峰,可以帮我们储存大量的水和养分,让我们能在沙漠里耐受十几天的无水无食条件。”小骆驼又问:“妈妈妈妈,为什么我们的脚掌那么厚?”
骆驼妈妈说:“那可以让我们重重的身子不至于陷在软软的沙子里,便于长途跋涉啊。”小骆驼高兴坏了:“哗,原来我们这么有用啊!!可是妈妈,为什么我们还在动物园里,不去沙漠远足呢?”
  天生我才必有用,可惜现在没人用。一个好的心态+一本成功的教材+一个无限的舞台=成功。每人的潜能是无限的,关键是要找到一个能充分发挥潜能的舞台。

  10、分粥
  有七个人曾经住在一起,每天分一大桶粥。要命的是,粥每天都是不够的。一开始,他们抓阄决定谁来分粥,每天轮一个。于是乎每周下来,他们只有一天是饱的,就是自己分粥的那一天。后来他们开始推选出一个道德高尚的人出来分粥。强权就会产生腐败,大家开始挖空心思去讨好他,贿赂他,搞得整个小团体乌烟障气。然后大家开始组成三人的分粥委员会及四人的评选委员会,但他们常常互相攻击,扯皮下来,粥吃到嘴里全是凉的。最后想出来一个方法:轮流分粥,但分粥的人要等其它人都挑完后拿剩下的最后一碗。为了不让自己吃到最少的,每人都尽量分得平均,就算不平,也只能认了。大家快快乐乐,和和气气,日子越过越好。
  同样是七个人,不同的分配制度,就会有不同的风气。所以一个单位如果有不好的工作习气,一定是机制问题,一定是没有完全公平公正公开,没有严格的奖勤罚懒。如何制订这样一个制度,是每个领导需要考虑的问题。

jxb8901
2002-12-04 13:51
我查了一下资料, 觉得应该可以用Attribute value templates, 但我在IE5下试了一下发现不行, 如果你是在服务端转换的话应该可以的.

jxb8901
2002-12-04 14:01
我找到了, 可以这样:

<a>
<xsl:attribute name="href">
    <xsl:text>../../jsp/user/editUsers.jsp?userId=</xsl:text>
    <xsl:value-of select="userId" />
</xsl:attribute>
<xsl:text>../../jsp/user/editUsers.jsp?userId=</xsl:text>
<xsl:value-of select="userId" />
</a>
<p class="indent">

nmg
2002-12-05 15:25
多谢!
可是不知为什末在listUsers.xsl中加了
<a>
<xsl:attribute name="href">
    <xsl:text>../../jsp/user/editUsers.jsp?userId=</xsl:text>
    <xsl:value-of select="userId" />
</xsl:attribute>
<xsl:text>../../jsp/user/editUsers.jsp?userId=</xsl:text>
<xsl:value-of select="userId" />
</a>

这段话后,用ie6打开listUsers.xml就显示乱码了,
是怎摸会事呢?还要用到zalan 等别的工具吗?
<p class="indent">

jxb8901
2002-12-05 20:50
你的名称空间宣告不对, 应该用下面的:

<xsl:stylesheet  version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

nmg
2002-12-06 09:23
多谢jxb8901!
献上一个小幽默:

面向“对象”的C++程序
////////////////////////////////////////////////////////////////////
// Coded by SunSoft //
// Design Date: 2002-10-28 //
///////////////////////////////////////////////////////////////////

RESULT love(boy, girl)

{
  if( boy.有房() AND boy.有车() )
  {
   boy.Set(Nothing);
   return girl.嫁给(boy);
  }
  else if( girl.愿意等() )
  {
   next_year:
   for( day=1; day<=365; day++)
   {
    if( day == 情人节 )
     if( boy.GiveGirl(玫瑰) )
      girl.感情++;
     else
      girl.感情--;
    if( day == girl.生日)
     if( boy.GiveGirl(玫瑰) )
      girl.感情++;
     else
      girl.感情--;
    boy.拼命赚钱();
   }
   年龄++;
   girl.感情--;
   if( boy.有房() AND boy.有车() )
   {
    boy.Set(Nothing);
    return girl.嫁给(boy);
   }
   else if! ( boy.赚钱 > 100,000 AND girl.感情 > 8 )
    goto next_year;
   else
    return girl.goto( another_boy );
  }
  return girl.goto( another_boy );
}

nmg
2002-12-09 10:18
这个问题在ie中文6.0下已经ok了,可是在我家里的ie5.0英文环境下就又不行了,不知道是不是microsoft IE版本不同,xml parser不同造成的,不知如何才能解决?请教了

nmg
2002-12-10 09:50
IE5.0和IE6.0在xml parser上有什末不一样的吗,如何才能解决?

流氓小义
2002-12-14 09:15
兄才我对这不是太懂的啊
你能和我说说这具体要如何应用

从XML到XSL到Servlet到jsp

给我一个最简单的例子就OK了
我目前主要是作一些java开发
这方面可能会有需要的