Введение:
У меня есть повторитель с кнопками ссылок, и когда я нажимаю на какую-то кнопку, я хочу, чтобы он и только он стал прозрачным, а остальные кнопки не менялись.
D-хвосты:
У меня есть повторитель LinkButtons:
<div style="position: relative">
<asp:Repeater runat="server" ID="repStatuses"
onitemdatabound="repStatuses_ItemDataBound"
onitemcommand="repStatuses_ItemCommand">
<ItemTemplate>
<div id="divLinkBtn" style="display:inline"><asp:LinkButton ID="linkBtnStatuses" runat="server" CommandName="ShowText"
CommandArgument='<%# Eval("Priority") + ";" + Eval("LevelID") + ";" + Eval("ID") %>'
OnClientClick='<%# "MyFunc(" + Eval("Priority") + ");" %>'>
<div runat="server" id="divSts" class="fontAriel" ></div>
</asp:LinkButton></div>
</ItemTemplate>
</asp:Repeater>
</div>
LinkButton постепенно появляются на странице Page_Load с помощью следующей функции JQuery. Вот Page_Load и код jquery:
Page_Load:
protected void Page_Load(object sender, EventArgs e)
{
SetPageTitle();
if (!Page.IsPostBack)
{
LoadStatusesAndButtons();
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "tmp", "<script type='text/javascript'>LoadBarWithFadeIN();</script>", false);
}
else
ScriptManager.RegisterStartupScript(this.Page, this.GetType(), "tmp", "<script type='text/javascript'>LoadBar();</script>", false);
}
JQuery
function LoadBarWithFadeIN() {
$(document).ready(function () {
$('a[id*="repStatuses"]').each(function () {
$(this).show(2500);
$(this).delay(1000);
});
});
}
function LoadBar() {
$(document).ready(function () {
$('a[id*="repStatuses"]').each(function () {
$(this).show(0);
});
});
}
Когда я нажимаю какой-нибудь LinkButton, он становится прозрачным. Я обнаружил, что этот code
делает прозрачными только первые кнопки ссылок:
$(document).ready(function () {
$('#divLinkBtn').click(function () {
alert('divlinkbutton presed');
$(this).css({ 'opacity': 0.4 });
});
});
ПРОБЛЕМА в том, что кнопка становится прозрачной на секунду, а затем страница загружает функцию LoadBar()
, и прозрачность исчезает. Другое дело, что эта функция не обрабатывает остальные кнопки.
Теперь мне нужно, чтобы эта кнопка LinkButton оставалась прозрачной, пока я не нажму другую кнопку ссылки.
Я думал о способе загрузить все не нажатые кнопки как есть и каким-то образом загрузить конкретную нажатую кнопку с прозрачностью, но я не могу найти способ сделать это из-за отсутствия опыта программирования.
Простите за "короткий" пост :)
Любая помощь будет очень признательна !!!!!
display: inline
. (display: block заставляет кнопки ссылок двигаться вертикально, а я хочу их горизонтально). - person Yanker   schedule 01.01.2013