Добрый день.
Посоветуйте решение задачки: с помощью xslt выделить элемент в Select-е.
т.е. есть html список, value для выделения береться из xml.
Нужно в xslt скрипте как-то выделить элемент.
Здравствуйте, Аноним, Вы писали:
А>Добрый день. А>Посоветуйте решение задачки: с помощью xslt выделить элемент в Select-е. А>т.е. есть html список, value для выделения береться из xml. А>Нужно в xslt скрипте как-то выделить элемент.
А>Благодарю за помощь.
Эээ — не совсем понятно — что на входе и что должно быть на выходек?
> Посоветуйте решение задачки: с помощью xslt выделить элемент в Select-е. > т.е. есть html список, value для выделения береться из xml. > Нужно в xslt скрипте как-то выделить элемент.
Здравствуйте, Beard-electronic, Вы писали:
BE>Эээ — не совсем понятно — что на входе и что должно быть на выходек?
input xml (другие атрибуты убрал):
<row Country="BR" />
сам список находится в xslt шаблоне:
<xsl:variable name="country">
<SELECT>
<option value="AR">Argentina</option>
<option value="BZ">Belize</option>
<option value="BO">Bolivia</option>
<option value="BR">Brazil</option>
<option value="CL">Chile</option>
<option value="CO">Colombia</option>
<option value="CR">Costa rica</option>
<option value="DO">Rep. Dominicana</option>
<option value="EC">Ecuador</option>
<option value="SV">El Salavador</option>
<option value="GT">Guatemala</option>
<option value="HN">Honduras</option>
<option value="MX">Mexico</option>
<option value="NI">Nicaragua</option>
<option value="PA">Panama</option>
<option value="PY">Paraguay</option>
<option value="PE">Peru</option>
<option value="VE">Venezuela</option>
<option value="UY">Uruguay</option>
</SELECT>
</xsl:variable>
нужно чтобы в html-е элемент Brazil был выделен
Переместить список в xml не предлагайте. неправильно это по-моему.
Здравствуйте, Аноним, Вы писали:
А>Переместить список в xml не предлагайте. неправильно это по-моему.
Почему не правильно? Я бы как раз и завел отдельный XML-ик, в котором
только бы и лежал список стран, и пользовал бы его через функцию
document() — можно было бы воспользоваться методом,
предложенным ibnTeo, только нужное значение стоит засунуть
сразу в переменную, чтоб побыстрее работало...
Re[4]: Xslt - выделить элемент в списке.
От:
Аноним
Дата:
12.07.06 16:10
Оценка:
Здравствуйте, Beard-electronic, Вы писали:
BE>Здравствуйте, Аноним, Вы писали:
А>>Переместить список в xml не предлагайте. неправильно это по-моему.
BE>Почему не правильно? Я бы как раз и завел отдельный XML-ик, в котором BE>только бы и лежал список стран, и пользовал бы его через функцию BE>document() — можно было бы воспользоваться методом, BE>предложенным ibnTeo, только нужное значение стоит засунуть BE>сразу в переменную, чтоб побыстрее работало...
вообщем так наверное можно сделать.
но мне интересно как это сделать через xslt.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Beard-electronic, Вы писали:
BE>>Здравствуйте, Аноним, Вы писали:
А>>>Переместить список в xml не предлагайте. неправильно это по-моему.
BE>>Почему не правильно? Я бы как раз и завел отдельный XML-ик, в котором BE>>только бы и лежал список стран, и пользовал бы его через функцию BE>>document() — можно было бы воспользоваться методом, BE>>предложенным ibnTeo, только нужное значение стоит засунуть BE>>сразу в переменную, чтоб побыстрее работало...
А>вообщем так наверное можно сделать. А>но мне интересно как это сделать через xslt.
Так это через XSLT
Если хочется использовать именно переменную, то придется ограничиться расширением
конкретного трансформера (например, как предложил Lloyd), если таковые есть,
ну или написать свое, если это возможно...
Есть и другой способ использования данных, прописанных в скрипте — здесь
Спасибо большое всем за помощь.
Lloyd-у отдельно респект. хотелось именно такое решение.
P.S. не хотел дискутировать с Beard-electronic и ibnTeo по поводу способа решения. сорри, времени был дефицит.
Сейчас можно подробнее обосновать мое требование.
1. в xml у меня храняться данные, в xslt — html и скритп преобразования. Не вижу смысла смешивать данные и представление.
2. используется эта петрушка в ajax приложении, xslt загружается один раз и хранится на клиенте. далее подгружаются только xml данные и преобразование происходит уже на клиенте. поэтому тянуть каждый раз с сервера html-список нецелесообразно.
Здравствуйте, Аноним, Вы писали:
А>2. используется эта петрушка в ajax приложении, xslt загружается один раз и хранится на клиенте. далее подгружаются только xml данные и преобразование происходит уже на клиенте. поэтому тянуть каждый раз с сервера html-список нецелесообразно.
В таком случае лучше моим методом не пользоваться.
Здравствуйте, Аноним, Вы писали:
А>P.S. не хотел дискутировать с Beard-electronic и ibnTeo по поводу способа решения. сорри, времени был дефицит. А>Сейчас можно подробнее обосновать мое требование. А>1. в xml у меня храняться данные, в xslt — html и скритп преобразования. Не вижу смысла смешивать данные и представление.
Так хранение в отдельном файле списка стран нчего не "смешивает", как раз наоборот — придает до гибкость — если
у нас несколько скриптов будут его юзать, то на придется в каждый его вставлять, плюс, если мы хотим
добавить/удалить страны, то можно будет это сделать в одном месте...
А>2. используется эта петрушка в ajax приложении, xslt загружается один раз и хранится на клиенте. далее подгружаются только xml данные и преобразование происходит уже на клиенте. поэтому тянуть каждый раз с сервера html-список нецелесообразно.
Вот этот файл тоже можно подрузить только один раз — и ничего не надо будет тянуть каждый раз.
Здравствуйте, Аноним, Вы писали:
А>Добрый день. А>Посоветуйте решение задачки: с помощью xslt выделить элемент в Select-е. А>т.е. есть html список, value для выделения береться из xml. А>Нужно в xslt скрипте как-то выделить элемент.
А>Благодарю за помощь.