1

我有两个 DropDownList: 1) CollegeDDL,其中包含四个学院的静态名称。: 顺势医学院、理疗学院、阿育吠陀学院、工商管理学院

2) CourseDDL,绑定到 CourseDetail.XML。

    <Institutes>  
    <Institute>
    <InstituteName>  Homoeopathic Medical College  </InstituteName>
    <Course> <CourseName>  BHMS                    </CourseName> </Course>  
    <Course> <CourseName>  MD(Repertary)           </CourseName> </Course>  
    <Course> <CourseName>  MD(Organon of Medicine) </CourseName> </Course>  
    <Course> <CourseName>  MD(Materia Medica)      </CourseName> </Course>  
    </Institute>

    <Institute>
    <InstituteName>  Physiotherapy College  </InstituteName>
    <Course> <CourseName>  BPT          </CourseName> </Course> 
    <Course> <CourseName>  BPT(Sports)  </CourseName> </Course> 
    <Course> <CourseName>  BPT(Cardio)  </CourseName> </Course>
    </Institute>

    <Institute>
    <InstituteName>  Institute of Ayurved  </InstituteName>
    <Course> <CourseName>  BAMS          </CourseName> </Course>
    <Course> <CourseName>  BAMS(Nature)  </CourseName> </Course>
    <Course> <CourseName>  BAMS(Plants)  </CourseName> </Course>
    </Institute>

    <Institute>
    <InstituteName> Institute of Business Administration </InstituteName>
    <Course> <CourseName>BBA</CourseName> </Course> 
    <Course> <CourseName>DBM</CourseName> </Course> 
    <Course> <CourseName>BBA(Distance)</CourseName> </Course>   
    </Institute>

CourseDetail.XSL

    <xsl:template match ="/">

    <Institute>
    <xsl:apply-templates select ="Institutes/Institute/Course"/>
    </Institute>

    </xsl:template>


    <xsl:template match ="Institutes/Institute/Course">
    <Institute>
    <xsl:attribute name="CourseName">
    <xsl:value-of select="CourseName"/>
    </xsl:attribute>
    </Institute>

    </xsl:template>

我已将 Coursedetail.XML 绑定到 CourseDDL 和 CourseDetail.XSL(无 XPATH 表达式)

完成此操作后,My CourseDDL 将正确填充我的 XML 文件的所有 CourseName 值。但现在我想根据在 CollegeDDL 中选择的大学名称过滤绑定到 CourseDDL 的数据。

例如:目前我的 CourseDDL 包含所有 CourseName:BHMS,MD(Repertary),MD(Organon of Medicine),......,DBM,BBA(Distance)。

但是当我在 CollegeDDL 中选择“顺势医学院”时,绑定到 CourseDDL 的数据应该相应地过滤。这意味着当我选择“顺势医学院”时,我的 CourseDDL 应该只显示该课程:BHMS,MD(Repertary),MD(Organon of Medicine),MD(Materia Medica)


我尝试了以下方法,但无法实现。

    1) XmlDataSourceCourse.XPath = "/Institutes/Institute[InstituteName='" +         CollegeDDL.SelectedItem.Value + "']"

    2) XmlDataSourceCourse.XPath = "/Institutes/Institute[InstituteName='" +         CollegeDDL.SelectedItem.Value + "']/Course"

    3)XmlDataSourceCourse.XPath = "/Institutes/Institute[InstituteName='" + CollegeDDL.SelectedItem.Value + "']/Course/CourseName"

请任何人帮助格式化正确的 XPATH 表达式以实现此目的。

4

1 回答 1

0

我认为 Pavel 是对的,问题在于空间 - 尝试:

/Institutes/Institute[normalize-space(InstituteName)='" + CollegeDDL.SelectedItem.Value + "']/Course/CourseName

甚至

/Institutes/Institute[normalize-space(InstituteName)=normalize-space('" + CollegeDDL.SelectedItem.Value + "')]/Course/CourseName
于 2012-05-15T12:45:58.510 回答