Я создаю мастер вопросов и ответов, который использует xsl для генерации html и отправляет обратно с использованием ajax. Я слишком долго смотрел на эту проблему и надеюсь, что свежие глаза помогут обнаружить мой пробел!
Параметры вывода в порядке, но возникают проблемы при настройке ранее представленного ответа. Если я сделаю следующее, совпадение не произойдет, и, следовательно, не будет выбран ни один переключатель. Преобразование на стороне сервера в asp.net, поскольку механизмы сравнения могут немного отличаться.
<xsl:for-each select="Options/Option">
...
<xsl:value-of select="/ExpertData/Answers//Answer[@QuestionGuid = ../../QuestionGuid]"> </xsl:value-of>
...
</xsl:for-each>
Если у меня есть следующее (жестко запрограммированное в одном из руководств, оно работает. Не уверен, тогда каков был бы вышеуказанный путь для его исправления?
<xsl:value-of select="/ExpertData/Answers//Answer[@QuestionGuid = '450ea4d6-a2e8-e011-9787-2c27d71e99a6']"></xsl:value-of>
Общий формат XML ...
<?xml version="1.0" encoding="utf-8">
<ExpertData xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Questions>
<Question xsi:type="RelevantQuestion">
<QuestionGuid>450ea4d6-a2e8-e011-9787-2c27d71e99a6</QuestionGuid>
<ItemGuid>440ea4d6-a2e8-e011-9787-2c27d71e99a6</ItemGuid>
<ElementGuid>f23ef2cc-9a1c-4833-995d-c7ddffec33fa</ElementGuid>
<QuestionText>Is the Classification Item relevent to this road section?</QuestionText>
<FieldType>Radio</FieldType>
<QuestionHelpText>Help text...</QuestionHelpText>
<Options>
<Option>
<OptionGuid>4b0ea4d6-a2e8-e011-9787-2c27d71e99a6</OptionGuid>
<OptionText>Yes</OptionText>
<IsDefault>false</IsDefault>
</Option>
<Option>
<OptionGuid>4c0ea4d6-a2e8-e011-9787-2c27d71e99a6</OptionGuid>
<OptionText>No</OptionText>
<IsDefault>false</IsDefault>
</Option>
</Options>
<ReliabilityOptions />
<QuestionValidationList />
</Question>
<Question>
<QuestionGuid>460ea4d6-a2e8-e011-9787-2c27d71e99a6</QuestionGuid>
<ItemGuid>440ea4d6-a2e8-e011-9787-2c27d71e99a6</ItemGuid>
<ElementGuid>f23ef2cc-9a1c-4833-995d-c7ddffec33fa</ElementGuid>
<QuestionText>Please select the road type</QuestionText>
<FieldType>Radio</FieldType>
<Options>
<Option>
<OptionGuid>4d0ea4d6-a2e8-e011-9787-2c27d71e99a6</OptionGuid>
<OptionText>2 lane undivided</OptionText>
<IsDefault>false</IsDefault>
</Option>
<Option>
<OptionGuid>4e0ea4d6-a2e8-e011-9787-2c27d71e99a6</OptionGuid>
<OptionText>2 lane divided</OptionText>
<IsDefault>false</IsDefault>
</Option>
</Options>
<ReliabilityOptions />
<QuestionValidationList />
</Question>
</Questions>
<Answers>
<Answer QuestionGuid="450ea4d6-a2e8-e011-9787-2c27d71e99a6">
<AnswerValue>Yes</AnswerValue>
<ReliabilityOptionGuid xsi:nil="true" />
</Answer>
<Answer QuestionGuid="460ea4d6-a2e8-e011-9787-2c27d71e99a6">
<AnswerValue>2 lane undivided</AnswerValue>
<ReliabilityOptionGuid xsi:nil="true" />
</Answer>
</Answers>
</ExpertData>