Member 11573837 Ответов: 3

как установить текст метки в asp.net использование javascript


привет,
у меня есть выпадающий список с элементом tow когда я выбрал один из них я хочу изменить текст майской метки я добавил эту инструкцию в свою функцию javascript и у меня есть это

Коллекция элементов управления не может быть изменена, поскольку элемент управления содержит блоки кода (то есть <% ...% > )


и это мой код

function TChanged() {
            if (document.getElementById("cmb_choi").value == "HeureP") {

                document.getElementById('<%=lblnbr.ClientID%>').value = 'Nbr heure';
            }
           else if (document.getElementById("cmb_choi").value == "JourP") {

                document.getElementById('<%=lblnbr.ClientID%>').text = 'Nbr Jour';
            }
}




<asp:DropDownList ID="cmb_choi" CssClass="drp" runat="server" AppendDataBoundItems="True" onchange="TChanged()">
                       <asp:ListItem Text="--Période--" Value="Période"></asp:ListItem>
                       <asp:ListItem Text="Jour" Value="JourP"></asp:ListItem>
                       <asp:ListItem Text="heur" Value="MoisP"></asp:ListItem>
 </asp:DropDownList>
<asp:Label ID="lblnbr" runat="server" Text="Label"></asp:Label>

3 Ответов

Рейтинг:
24

Vinod Jangle

Привет,

Попробуйте использовать приведенный ниже скрипт, это обновит значение метки при изменении выбора выпадающего элемента управления.

function TChanged() 
{
   var control = document.getElementById('<%= cmb_choi.ClientID %>');
   var selectedvalue = control.options[control.selectedIndex].value;

   if (selectedvalue == "HeureP") 
    {
       document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr heure';
    }
   else if (selectedvalue == "JourP") 
    {
       document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr Jour';
    }
}


Member 11573837

привет VJ04,
я попробовал ваше решение, но я получаю ту же ошибку

[no name]

Привет,

Я попробовал использовать приведенный ниже код в браузере Chrome, и он, похоже, работает для меня. Загружается ли ваш скрипт в браузере? Я не знаю, как прикрепить код здесь, иначе я загружу свой пример кода.

Дайте мне знать, если это поможет вашей проблеме.

&ЛТ;форме ID="форма form1" атрибут runat="сервер"и GT;
<script type="text/javascript">
функция TChanged() {
контроль ВАР = документ.метода getElementById('&л;%= cmb_choi.ClientID %>');
ВАР selectedvalue = контроль.функции[контроль.свойства selectedIndex].значение;

if (selectedvalue == "MoisP") {

document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr heure';
}
else if (selectedvalue == "JourP") {

document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr Jour';
}
}
</script>

&ЛТ;как ASP:dropdownlist с ИД="cmb_choi" CssClass="ДРП" атрибут runat="сервер" AppendDataBoundItems="истинный" onChange, после="TChanged()"&ГТ;
&ЛТ;АСП:текст элемент listitem="--Période--" значение="Période"&ГТ;
&ЛТ;АСП:текст элемент listitem="Жур" значение="JourP"&ГТ;
&ЛТ;АСП:текст элемент listitem="антивирусом" значение="MoisP"&ГТ;

&ЛТ;АСП:метка идентификатор="lblnbr" атрибут runat="сервер" текст="метка"и GT;
</форма>

Member 11573837

привет VJ04,
это работает когда я добавляю новую страницу но когда я хочу добавить на свою страницу слово у меня такая же ошибка на моей странице Я работаю со scriptmanager и менеджером обновлений я думаю что это проблема

[no name]

Ну, я не думаю, что scriptmanager или updatepanal создают здесь какие-либо проблемы.. это все еще работает с ним, как показано ниже. Я попробовал тот же код, добавив мастер-страницу и страницу содержимого, где я поместил как скрипт, так и элемент управления на страницу содержимого, где вся страница содержимого находится в панели обновления из мастер-контейнера, и это сработало в обоих случаях.

Вы делаете что-то другое? если это возможно, можете ли вы включить какой-то код, я постараюсь помочь вам изо всех сил :)

Пример 1 - с помощью скрипта и элемента управления на одной веб-странице
&ЛТ;форме ID="форма form1" атрибут runat="сервер"и GT;
<asp:ScriptManager ID="sm1" runat="server" />

<script type="text/javascript">
функция TChanged() {
контроль ВАР = документ.метода getElementById('&л;%= cmb_choi.ClientID %>');
ВАР selectedvalue = контроль.функции[контроль.свойства selectedIndex].значение;

if (selectedvalue == "MoisP") {

document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr heure';
}
else if (selectedvalue == "JourP") {

document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr Jour';
}
}
</script>
&ЛТ;как ASP:UpdatePanel и ИД="UpdatePanel и" атрибут runat="сервер"и GT;
<contenttemplate>
&ЛТ;как ASP:dropdownlist с ИД="cmb_choi" CssClass="ДРП" атрибут runat="сервер" AppendDataBoundItems="истинный" onChange, после="TChanged()"&ГТ;
&ЛТ;АСП:текст элемент listitem="--Période--" значение="Période"&ГТ;
&ЛТ;АСП:текст элемент listitem="Жур" значение="JourP"&ГТ;
&ЛТ;АСП:текст элемент listitem="антивирусом" значение="MoisP"&ГТ;

&ЛТ;АСП:метка идентификатор="lblnbr" атрибут runat="сервер" текст="метка"и GT;


</форма>


Пример 2 - с главной и содержательной страницей
// Это главная страница
&ЛТ;форме ID="форма form1" атрибут runat="сервер"и GT;
<asp:ScriptManager ID="sm1" runat="server" />
<div>Привет
&ЛТ;как ASP:UpdatePanel и ИД="UpdatePanel и" атрибут runat="сервер"и GT;
<contenttemplate>
&ЛТ;как ASP:ContentPlaceHolder идентификатор="объекту contentplaceholder1" атрибут runat="сервер" /&ГТ;


</div>
</форма>

// Это страница содержимого
&ЛТ;АСП:контента ID="Content1" атрибутом ContentPlaceHolderID="объекту contentplaceholder1" атрибут runat="сервер"и GT;

<script type="text/javascript">
функция TChanged() {
контроль ВАР = документ.метода getElementById('&л;%= cmb_choi.ClientID %>');
ВАР selectedvalue = контроль.функции[контроль.свойства selectedIndex].значение;

if (selectedvalue == "MoisP") {

document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr heure';
}
else if (selectedvalue == "JourP") {

document.getElementById('<%=lblnbr.ClientID%>').innerHTML = 'Nbr Jour';
}
}
</script>
&ЛТ;как ASP:dropdownlist с ИД="cmb_choi" CssClass="ДРП" атрибут runat="сервер" AppendDataBoundItems="истинный" onChange, после="TChanged()"&ГТ;
&ЛТ;АСП:текст элемент listitem="--Période--" значение="Période"&ГТ;
&ЛТ;АСП:текст элемент listitem="Жур" значение="JourP"&ГТ;
&ЛТ;АСП:текст элемент listitem="антивирусом" значение="MoisP"&ГТ;

&ЛТ;АСП:метка идентификатор="lblnbr" атрибут runat="сервер" текст="метка"и GT;

[no name]

Конечно.

Рейтинг:
2

Acharya Raja Sekhar

Привет,

Попробовать это

<asp:dropdownlist id="cmb_choi" cssclass="drp" runat="server" appenddatabounditems="True" onchange="TChanged(); return false;" >
                       <asp:listitem text="--Période--" value="Période"></asp:listitem>
                       <asp:listitem text="Jour" value="JourP"></asp:listitem>
                       <asp:listitem text="heur" value="MoisP"></asp:listitem>
 </asp:dropdownlist>
<asp:label id="lblnbr" runat="server" text="Label" ></asp:label>


Пожалуйста, обратитесь по этой ссылке http://stackoverflow.com/questions/6986504/how-to-set-text-to-label-with-jquery

Дайте мне знать, если я не понял вопроса.


Рейтинг:
1

alplax

HTML

<input type="hidden" value="" ClientIDMode="Static" runat="server" id='hid'/>


СКРИПТ
<script>
        function mostrar(id) {
            $(document).ready(function () {
                document.getElementById("hid").setAttribute("value", id);
                });
            };        
    </script>


CodeBehid
protected void imgSeleccion_Click(object sender, ImageClickEventArgs e)
        {   
            string aux = hid.Value;
        }


Пробовал ванной vs2019

la clave es esto:
ClientIDMode="Static"