使用XSLT,如何在文本框中显示只读文本?

当使用XSLT做解析的过程中,希望在页面上显示只读文本,效果如下图所示:

  

有两种方法实现上述的效果:

1. 短模式:<input type="text" value="..." readonly="readonly"/>

现举例说明如下:

   <td>随访医生</td>
   <td>
          <input type="text" value="{cda:author/cda:assignedAuthor/cda:assignedPerson/cda:name}" readonly="readonly"/>
   </td>

效果如下所示:

     

2.长模式:<input type="text" readonly="readonly">
                     <xsl:attribute name="value">

                      ......

                     </xsl:attribute>
               </input>

举例:

       <input type="text" readonly="readonly">
             <xsl:attribute name="value">
                     <xsl:call-template name="date-format1">
                             <xsl:with-param name="date" select="cda:component/cda:structuredBody/cda:component/cda:section/cda:entry/cda:observation/cda:effectiveTime/@value" />      
                             </xsl:call-template>                                                
                     </xsl:attribute>
        </input>

 

 <xsl:template name="date-format1">
        <xsl:param name="date" />
        <xsl:if test="$date">
            <xsl:value-of select="substring($date, 1, 4)" />
            <xsl:text>-</xsl:text>
            <xsl:value-of select="substring($date, 5, 2)" />
            <xsl:text>-</xsl:text>
            <xsl:value-of select="substring ($date, 7, 2)" />
            <xsl:text></xsl:text>
        </xsl:if>
    </xsl:template>

效果如下所示:

     

 

 

   

 

posted @ 2014-03-05 17:22  yangxiaowei  阅读(241)  评论(0编辑  收藏  举报