Неверный смысл элемента управления ASP PlaceHolder - PullRequest
1 голос
/ 15 марта 2011

У меня есть простой div на html, что-то вроде:

<div class="warning">
    <h3>Please make sure:</h3>
    <asp:PlaceHolder id="phWarnings" runat="server"></asp:PlaceHolder>
    <br />
    <a href="javascript:void(0)" onClick="$('#warning').hide()">Okay</a>
</div>

PlaceHolder заполняется парой переключателей, закрывающим div, некоторыми элементами h4 и p.1006 *

Однако, когда появляется страница, весь div (вместе с его дочерним содержимым) полностью выходит за пределы предупреждающего div.Я думал, что испортил структуру div в codebehind, поэтому я просто закомментировал все и сделал следующее:

phWarnings.Controls.Add(new LiteralControl("Meh"));

Угадайте что?Да, строка «Мех» тоже была вне предупреждающего раздела.Параметр HTML (при просмотре исходного кода) показывает это:

<div class="warning">
    <h3>Please make sure:</h3>
    <br />
    <a href="javascript:void(0)" onClick="$('#warning').hide()">Okay</a>
</div>

Meh

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

Есть идеи, почему это происходит, пожалуйста?

Ответы [ 3 ]

1 голос
/ 15 марта 2011

Вещи не просто случаются, они происходят по причине. Если они выглядят так, как будто они просто происходят, то это просто означает, что вы не знаете причину ... вот почему вы спрашиваете. Итак ...

Проблема должна быть связана с вашим html или css. Так как ты не даешь нам многого, мало что можно сказать.

Вы могли бы поднять страницу и предоставить ссылку на нее, чтобы люди могли просматривать html и css. Нет причин, по которым ты не можешь этого сделать.

На что обращать внимание в вашем css? поплавки, которые не были очищены, например.

На что обращать внимание в HTML? Незакрытые метки.

Вы можете диагностировать вышеуказанную проблему, щелкнув правой кнопкой мыши в области, вызывающей проблемы, и выполнив «Проверка элемента» при просмотре страницы в Google Chrome или FireFox?

Вы назначаете классы CSS, используя jquery или аналогичные? Вероятно, нет, учитывая ваш встроенный JS-код в теге ...

Все вышеперечисленное или их комбинация являются возможными кандидатами, но из-за отсутствия страницы, которую вы можете посмотреть, вы не получите большой помощи.

0 голосов
/ 15 марта 2011

Просто угадайте, переопределяете ли вы метод рендеринга страницы?И если вы попытаетесь изменить содержащий div на runat = "server", что произойдет?

0 голосов
/ 15 марта 2011

Возможно, я не прав, но то, что я интерпретировал из описания, это то, что вы добавляете какой-то HTML-код из своего заполнителя.

Если это возможно, вы можете добавить элементы в свой div через jquery.

$ ('div.warning'). Append ("ваш контент")

...