JQuery и невидимый выбор - JQuery - PullRequest
1 голос
/ 14 апреля 2009

У меня есть флажок выбора, который имеет невидимое значение false. ASPX выглядит так:

<input name="selGR" id="selGR" type="checkbox" checked="checked" visible="false" runat="server" fieldname="GR"/>

Поле выбора даже не отображается в HTML, что объясняет, почему JQuery не находит его. Есть ли способ обойти это?

EDIT: Настройка стиля работает! Благодарю. Мне интересно знать, есть ли какие-либо правила, которым следует .NET Framework при рендеринге элементов управления с visible = "false"? Для всех элементов управления, независимо от того, являются ли они серверными, пользовательскими или HTML-элементами управления, следует ли это правило? Также, есть ли побочные эффекты от установки стиля вместо установки свойства visible?

Ответы [ 4 ]

5 голосов
/ 14 апреля 2009

вы всегда можете установить свойство display на none. jQuery сможет найти его в этот момент.

<input type="checkbox" id="selGr" style="display:none" />

Для дальнейшего использования. $ ("# selGr"). hide () & $ ("# selGr"). show () в основном использует свойство display элемента.

Я не верю, что «видимый» является атрибутом элемента. Хотя есть атрибут видимости и отображения, который можно установить в атрибуте style. Чтобы лучше понять разницу между видимостью и скрытым, проверьте это: http://www.devx.com/tips/Tip/13638

2 голосов
/ 14 апреля 2009

Visible является атрибутом asp.net, установив его в false, чтобы попросить сервер не отображать элемент управления. Вот почему ваш флажок отсутствует в исходном коде html.

Изменение свойства стиля отображения html на none говорит обозревателю не отображать флажок, однако оно все еще включено в исходный код.

1 голос
/ 06 сентября 2011

это опция, которую вы можете использовать "Display: None",

но если ты используешь это, чем ваш контроль будет отображаться каждый раз на странице, и если вы видите это в Firebug, вы найдете там свой контроль, и это не произойдет в Visible = false

1 голос
/ 14 апреля 2009

Используйте "style = 'display: none'" вместо "visible = 'false'". Таким образом, в рендеринге HTML все еще будет что-то с JQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...