Home  >  Article  >  Backend Development  >  Detailed explanation of examples on page 1/2 of obtaining values ​​and data modification through javascript xml xsl

Detailed explanation of examples on page 1/2 of obtaining values ​​and data modification through javascript xml xsl

Y2J
Y2JOriginal
2017-04-21 10:41:301798browse

1.example.xml--Main data file

<?xml version="1.0" encoding="UTF-8"?> 
<?xml:stylesheet type="text/xsl" href="example.xsl"?> 
<projects id="1"> 
    <project title="一级标题1" index="1"> 
        <items isTrunk="false" title="二级标题1.1" id="items_1"> 
            <result type="2">1</result> 
            <officer><![CDATA[]]></officer> 
            <classified>1</classified> 
            <eligibility>0</eligibility> 
            <remark></remark> 
        </items> 
        <items isTrunk="false" title="二级标题1.2" id="items_2"> 
            <result type="2">3</result> 
            <officer><![CDATA[]]></officer> 
            <classified>1</classified> 
            <eligibility>0</eligibility> 
        </items> 
    </project> 
    <project title="一级标题2" index="2"> 
        <items isTrunk="false" title="二级标题2.1" id="items_3"> 
            <result type="3">3</result> 
            <officer><![CDATA[]]></officer> 
            <classified>1</classified> 
            <eligibility>0</eligibility> 
        </items> 
        <items isTrunk="true" title="二级标题2.2"> 
            <item title="三级标题2.2.1" id="item_1"> 
                <result type="1">2</result> 
                <officer><![CDATA[居然是乱码]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
            <item title="三级标题2.2.2" id="item_2"> 
                <result type="1">3</result> 
                <officer><![CDATA[<><>]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
        </items>             
        <items isTrunk="true" title="二级标题2.3"> 
            <item title="三级标题2.3.1" id="item_3"> 
                <result type="2">1</result> 
                <officer><![CDATA[]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
            <item title="三级标题2.3.2" id="item_4"> 
                <result type="2">1</result> 
                <officer><![CDATA[]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
        </items>             
    </project> 
    <project title="一级标题3" index="3"> 
        <items isTrunk="false" title="二级标题3.1" id="items_4"> 
            <result type="4" units="元">25345</result> 
            <officer><![CDATA[sinoly]]></officer> 
            <classified>1</classified> 
            <eligibility>0</eligibility> 
        </items> 
        <items isTrunk="false" title="二级标题3.2" id="items_5"> 
            <result type="4" units="元">9865764</result> 
            <officer><![CDATA[]]></officer> 
            <classified>1</classified> 
            <eligibility>0</eligibility> 
        </items> 
        <items isTrunk="false" title="二级标题3.3" id="items_6"> 
            <result type="2">0</result> 
            <officer><![CDATA[]]></officer> 
            <classified>1</classified> 
            <eligibility>0</eligibility> 
        </items> 
        <items isTrunk="true" title="二级标题3.4"> 
            <item title="三级标题3.4.1" id="item_5"> 
                <result type="1">0</result> 
                <officer><![CDATA[]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
            <item title="三级标题3.4.2" id="item_6"> 
                <result type="1">0</result> 
                <officer><![CDATA[]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
            <item title="三级标题3.4.3" id="item_7"> 
                <result type="1">0</result> 
                <officer><![CDATA[]]></officer> 
                <classified>1</classified> 
                <eligibility>0</eligibility> 
            </item> 
        </items> 
    </project> 
</projects>

2.example.xsl--Style file, it is very convenient to get xml data

<?xml version="1.0" encoding="gb2312"?> 
<xsl:stylesheet version="1.0"   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <!--根模板-->     
    <xsl:output method="xml"/> 
    <xsl:template match="/">     
        <xsl:apply-templates select="projects/project"/> 
        <h6> 
            <button type="submit" class="btn1_mouseout" onmouseover="this.className=&#39;btn1_mouseover&#39;" onmouseout="this.className=&#39;btn1_mouseout&#39;" title="提交"> 下一步</button> 
        </h6> 
    </xsl:template> 
    <!--主题模板--> 
    <xsl:template match="project"> 
        <TABLE border="0" cellspacing="0" cellpadding="0" class="table"> 
            <tr> 
                <td colspan="5" align="center" class="tright"> 
                    <h2> 
                        <xsl:number value="position()" format="一、"/><xsl:value-of select="@title"/> 
                    </h2> 
                </td> 
            </tr> 
            <xsl:apply-templates select="items"/> 
        </TABLE> 
        <BR/> 
    </xsl:template> 
    <!--一级题干模板--> 
    <xsl:template match="items"> 
        <tr> 
            <td colspan="2" class="tright"> 
                <xsl:number value="position()" format="1."/><xsl:value-of select="@title"/> 
            </td> 
            <xsl:choose> 
                <xsl:when test="@isTrunk[.=&#39;false&#39;]"> 
                    <xsl:apply-templates select="result"/> 
                    <xsl:apply-templates select="officer"/> 
                </xsl:when> 
                <xsl:otherwise> 
                    <td colspan="3" class="tright" style="color:blue;font-weight:bolder"> 
                        注意以下几点 
                    </td> 
                    <xsl:apply-templates select="item"/> 
                </xsl:otherwise> 
            </xsl:choose> 
        </tr> 
    </xsl:template> 
        <!--二级题干模板--> 
    <xsl:template match="item"> 
      <tr> 
        <td class="tright" style="padding-left:20px" colspan="2"> 
            <h4><xsl:number value="position()" format="(a)."/><xsl:value-of select="@title"/></h4> 
        </td> 
            <xsl:apply-templates select="result"/> 
            <xsl:apply-templates select="officer"/> 
      </tr> 
    </xsl:template> 
    <!--选择框模板--> 
    <xsl:template match="result"> 
                    <xsl:choose> 
                        <xsl:when test="@type = &#39;1&#39;"> 
                            <td width="15%"> 
                            <xsl:element name="select"> 
                                <xsl:attribute name="name">re_<xsl:value-of select="../@id"/></xsl:attribute> 
                                <!--<select name="select">--> 
                                    <xsl:choose> 
                                        <xsl:when test=".=&#39;0&#39;"> 
                                            <option value="0" selected="selected">请选择 </option> 
                                            <option value="1">符合</option> 
                                            <option value="2">基本符合</option> 
                                            <option value="3">不符合</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;1&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1" selected="selected">符合</option> 
                                            <option value="2">基本符合</option> 
                                            <option value="3">不符合</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;2&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1">符合</option> 
                                            <option value="2" selected="selected">基本符合</option> 
                                            <option value="3">不符合</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;3&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1">符合</option> 
                                            <option value="2">基本符合</option> 
                                            <option value="3" selected="selected">不符合</option> 
                                        </xsl:when>                                         
                                    </xsl:choose> 
                                    <!--</select>--> 
                                </xsl:element> 
                            </td> 
                        </xsl:when> 
                        <xsl:when test="@type = &#39;2&#39;"> 
                            <td width="15%"> 
                                <xsl:element name="select"> 
                                <xsl:attribute name="name">re_<xsl:value-of select="../@id"/></xsl:attribute> 
                                    <xsl:choose> 
                                        <xsl:when test=".=&#39;0&#39;"> 
                                            <option value="0" selected="selected">请选择 </option> 
                                            <option value="1">是</option> 
                                            <option value="2">否</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;1&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1" selected="selected">是</option> 
                                            <option value="2">否</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;3&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1">是</option> 
                                            <option value="2" selected="selected">否</option> 
                                        </xsl:when>                         
                                    </xsl:choose> 
                                </xsl:element> 
                            </td> 
                        </xsl:when> 
                        <xsl:when test="@type = &#39;3&#39;"> 
                            <td width="15%"> 
                                <xsl:element name="select"> 
                                <xsl:attribute name="name">re_<xsl:value-of select="../@id"/></xsl:attribute> 
                                    <xsl:choose> 
                                        <xsl:when test=".=&#39;0&#39;"> 
                                            <option value="0" selected="selected">请选择 </option> 
                                            <option value="1">有</option> 
                                            <option value="2">无</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;1&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1" selected="selected">有</option> 
                                            <option value="2">无</option> 
                                        </xsl:when> 
                                        <xsl:when test=".=&#39;3&#39;"> 
                                            <option value="0">请选择 </option> 
                                            <option value="1">有</option> 
                                            <option value="2" selected="selected">无</option> 
                                        </xsl:when>                         
                                    </xsl:choose> 
                                </xsl:element> 
                            </td> 
                        </xsl:when> 
                        <xsl:otherwise> 
                            <td width="15%"> 
                            <xsl:element name="textarea"> 
                                <xsl:attribute name="name">re_<xsl:value-of select="../@id"/></xsl:attribute><xsl:value-of select="."/> 
                            </xsl:element> 
                                <xsl:value-of select="@units"/> 
                            </td> 
                        </xsl:otherwise> 
                    </xsl:choose> 
    </xsl:template> 
        <!--责任人模板--> 
    <xsl:template match="officer"> 
        <td width="9%" class="tright">责任人</td> 
        <td width="11%"> 
        <xsl:element name="textarea"> 
            <xsl:attribute name="name">of_<xsl:value-of select="../@id"/></xsl:attribute> 
            <xsl:value-of select="."/> 
        </xsl:element> 
        </td> 
    </xsl:template> 
</xsl:stylesheet>

Current 1/2 page 12Read the full text on the next page

The above is the detailed content of Detailed explanation of examples on page 1/2 of obtaining values ​​and data modification through javascript xml xsl. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn