Извлечь текст из div

0

Я пытаюсь сделать DropDownList, используя divs и jquery (чтобы я мог стилизовать его так, как хочу)... и его работа, но проблема в том, что я не могу получить выбранное значение из списка.

После выбора опции я копирую выбранное значение в div. Я хочу извлечь его с помощью С# (на странице.aspx.cs)... Я попытался сделать это с помощью строкового построителя и innerHtml (после добавление runat = "server" в div).. но это не работает... код выглядит следующим образом

.aspx Страница:

<div class="ddl">
    <div id="lowertriangle" class="lowertriangle"></div>
    <div id="uppertriangle" class="uppertriangle"></div>
    <div id="label" class="labeldiv_dd" runat="server"></div>//***This is the div from which I want to extract value***
    <div id="options" class="optionsidv_dd">
        <ul id="options_ul">
            <li id="0">Select One Option</li>
            <li id="1">Option 1</li>
            <li id="2">Option 2</li>
            <li id="3">Option 3</li>
            <li id="4">Option 4</li>
            <li id="5">Option 5</li>
        </ul>
    </div>
</div>

Страница aspx.cs

Метод 1, который я пробовал:

string sel_text = label.InnerHtml;
display_sel_value.Text = sel_text.ToString(); 

Второй метод:

var sb = new StringBuilder();
label.RenderControl(new HtmlTextWriter(new StringWriter(sb)));

string s = sb.ToString();

Просьба указать на мои ошибки и помочь мне в этом отношении (в извлечении innerHTML div, который есть). благодаря

  • 1
    $ ("#label") .html ();
  • 0
    Что такое "а" div? Вы имеете в виду метку div?
Показать ещё 11 комментариев
Теги:

2 ответа

2
Лучший ответ

Нет, размещение контента в div не будет работать.

Ваш пример недостаточно велик, чтобы увидеть все, что происходит, но предположим, что вы в стандартной <form>, вы устанавливаете внутренний HTML-элемент div в значение с Javascript, а затем отправляете стандартным способом,

Тогда одним из способов сделать то, что вы хотите, является использование скрытого ввода и установка его атрибута value вместо его содержимого.

<input id="label" class="labeldiv_dd" runat="server" type="hidden">

В коде кода С# может получить значение из этого элемента управления после отправки с помощью свойства .Value.

0

Хорошо, ребята, спасибо за ваши ответы. Я нашел способ решить эту проблему... Я использовал элемент управления HiddenField для хранения выбранного значения с помощью jQuery

$("#options_ul li").click(function () {
            var text = this.innerHTML;
            ***$('#<%= selectedvalue.ClientID %>').val(text);***
            $("#options_ul li").css("background-color", "#c2c2c2");
            $(this).css("background-color", "white");
            //var prev = this.id;
            //document.getElementById("label").innerHTML = text;
            toggleHeight();
        });

а затем доступ к ней на стороне сервера, используя

selectedvalue.value;

PS: "selectedvalue" является идентификатором элемента управления скрытым полем

Ещё вопросы

Сообщество Overcoder
Наверх
Меню