powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Установка значений checked средствами xslt
7 сообщений из 7, страница 1 из 1
Установка значений checked средствами xslt
    #34484437
bizdesign
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Люди помогите пожалуйста. Сами мы не местные... Есть значение radiobuttona'a в xml файле (например есть два радиобатона "Временный" "Постоянный"), допустим у нас значение "Временный". Нужно теперь используя это значения из xml'a установить radiobutton на форме в нужно положение "Временный", то есть поставить ему значение checked. Вот.... Заранее спасибо
...
Рейтинг: 0 / 0
Установка значений checked средствами xslt
    #34485137
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bizdesign Нужно теперь используя это значения из xml'a установить radiobutton на форме
Что за форма? На чем написана? php, xForms, html ?
приведи еще кусочек xml документа, где у тебя указано значение этого... radiobuttona'a.
...
Рейтинг: 0 / 0
Установка значений checked средствами xslt
    #34487390
bizdesign
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Форма html'ная. Вот ее кусочек с радиобатонами.
<tr>
<td>Вид работы</td>
<td> <input type="radio" name="vidwork" value="Постоянная" checked="checked" />
Постоянная
<input type="radio" name="vidwork" value="Временная" />
Временная </td>
</tr>

А вот часть xml файла:
<job id="1" allow="no">
<date>6.4.2007, 12:38</date>
<organization>Сбербанк</organization>
<vakant>Програмист</vakant>
<vidwork>Постоянная</vidwork> - поле заполняемое значениями радиобатонов
<dopinfo>Гибкий график</dopinfo>
<price>5672</price>

Нужно написать xsl который бы по значению из xml файла устанавливал бы переключатель радиобатонов в соответствующую позицию. Догадки есть примерно такие:
<xsl: when test = "значение поля vidwork">
<input value = "$vidwork" type="radio" name="vidwork" checked="checked" />
Вот в таком духе но не знаю как дальше... Может нужно сделать массив... Там цикл...
...
Рейтинг: 0 / 0
Установка значений checked средствами xslt
    #34489818
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
    <xsl:template match="job">
        <xsl:variable name="vidwork1" select="vidwork/text()"/>
        <tr>      <xsl:text>& # 10 ;</xsl:text>
            <td>
                <xsl:text>& # 10 ;</xsl:text>
                <input type="radio" name="vidwork" checked="checked">
                    <xsl:attribute name="value">
                        <xsl:value-of select="$vidwork1"/>
                    </xsl:attribute>
                </input>
                <xsl:text>& # 10 ;</xsl:text>
            </td>      <xsl:text>& # 10 ;</xsl:text>
        </tr>
    </xsl:template>

    <xsl:template match="root ">
        <xsl:apply-templates select="job"/>
    </xsl:template>
</xsl:stylesheet>
xml:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
<root>
    <job id="1" allow="no">
        <date> 6 . 4 . 2007 ,  12 : 38 </date>
        <organization>Сбербанк</organization>
        <vakant>Програмист</vakant>
        <vidwork>Постоянная</vidwork>
        <dopinfo>Гибкий график</dopinfo>
        <price> 5672 </price>
        </job>
</root>
результат:
Код: plaintext
1.
2.
3.
4.
<tr>
<td>
<input type="radio" name="vidwork" checked="checked" value="Постоянная"/>
</td>
</tr>
...
Рейтинг: 0 / 0
Установка значений checked средствами xslt
    #34490482
bizdesign
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отлично, спасибо большое. Но что делать со вторым радиобатоном? Как определить его значение? Или если их будет не два, а пять?
Просто если конкрентее, нужно сделать форму для редактирования данных введенных пользователями. И нужно получить данные пользователя и иметь возможность их изменить. Такую задачу поставили, млин... Спасибо, что подсказал решения как установить радиобанон, теперь бьюсь на проблемой как установить значения остальных. Помоги, пожалуйста, если сможешь.
...
Рейтинг: 0 / 0
Установка значений checked средствами xslt
    #34490957
SuSa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
        <xsl:template match="job">
                <xsl:variable name="vidwork1" select="vidwork/text()"/>
                <tr>
                        <xsl:text>
</xsl:text>
                        <td>
                                <xsl:for-each select="document('2.html')//input">
                                        <xsl:text>
</xsl:text>
                                        <input checked="checked" name="vidwork" type="radio">
                                                <xsl:attribute name="value">
                                                  <xsl:value-of select="$vidwork1"/>
                                                </xsl:attribute>
                                        </input>
                                        <xsl:text>
</xsl:text>
                                </xsl:for-each>
                        </td>
                        <xsl:text>
</xsl:text>
                </tr>
        </xsl:template>
        <xsl:template match="root ">
                <xsl:apply-templates select="job"/>
        </xsl:template>
</xsl:stylesheet>
пояснения:
"2.html" - это исходный html документ. в данном случаи это твой
Код: plaintext
1.
2.
3.
4.
5.
6.
<tr> 
<td>Вид работы</td>
<td> <input type="radio" name="vidwork" value="Постоянная" checked="checked" />
Постоянная 
<input type="radio" name="vidwork" value="Временная" />
Временная </td>
</tr>
Если тебе надо менять все значения input в одно значение данный пример подойдет.
Если в разные надо разбираться
В этой строке:
Код: plaintext
<xsl:variable name="vidwork1" select="vidwork/text()"/>
Можешь кокретно прописать значение которое присваивать..
З.Ы. Проследи чтоб во всех докумнатах (html, xml и xsl) была проставленна одна кодировка.
...
Рейтинг: 0 / 0
Установка значений checked средствами xslt
    #34491597
bizdesign
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все понял! Спасибо тебе большое. Ты мне здорово помог.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / XML, XSL, XPath, XQuery [игнор отключен] [закрыт для гостей] / Установка значений checked средствами xslt
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]