Не удается получить внутренний HTML-файл div в asp.net на сервере

0

У меня есть div с именем canvas.

Когда я пытаюсь получить его свойство InnerHTML он показывает, что он имеет пустое содержимое html.

Почему это имущество не заполнено?

код aspx

<form id="Form1" runat="server">
    <asp:ScriptManager runat="server">
    </asp:ScriptManager>
    <asp:UpdatePanel ID="upPanel" runat="server">
    <ContentTemplate>
        <div id="canvas" clientidmode="Static" runat="server" class="ui-droppable" 
             style="width: 1363px; height: 766px;">
        </div>
    </ContentTemplate>
    </asp:UpdatePanel>
</form>

С#

string finalHTML = canvas.InnerHTML;

Изображение 174551

  • 1
    пусто, так что вы ожидаете от него?
  • 0
    Я динамически добавляю его контент
Показать ещё 4 комментария

4 ответа

0

попробуйте использовать asp.net Hidden Field, чтобы получить innerHTML холста. Используйте jquery для получения HTML-кода div и инициализации его в скрытое поле.

$("#hiddenfieldID").val = $("#canvas").innerHTML;
0

Значение не будет доступно, если событие триггера обратной передачи не определено в триггерах панели - http://www.asp.net/web-forms/tutorials/aspnet-ajax/understanding-asp-net-ajax-updatepanel- триггеры

При использовании панелей обновлений только "части" страницы отправляются обратно на сервер, уменьшая HTTP-трафик и предоставляя функции AJAX. Если вы не укажете триггер для этой UpdatePanel, содержимое в UpdatePanel никогда не будет отправлено обратно на сервер.

0

Вы можете получить доступ только к данным, представленным через соответствующие поля формы, такие как <input>, <select> или <textarea>. Эти поля имеют runat="server" поэтому вы можете получить к ним доступ непосредственно в своем коде позади, или вы можете указать поля атрибуту name чтобы вы могли получить их через объект Request.Form...

Возможно, вы можете изменить поле в <textarea> или перенести на использование AJAX для отправки данных HTML в ваше приложение.

0

чтобы изменить стиль вашего div, вы можете использовать атрибут стиля:

canvas.Attributes["style"]

Ещё вопросы

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