Я хочу сделать это , но в asp.net.Как бы я написал это в asp.net/ код позади?У меня уже есть
protected void chkBox_CheckedChanged(object sender, EventArgs e)
{
if (chkBox.Checked){}
else{}
}
с
<asp:Checkbox ID="chkBox" AutoPostBack="True" runat="server"
onCheckedChanged="chkBox_CheckedChanged" />
, поэтому мне нужна помощь в заполнении остальных.Если серьезно, большое спасибо!
ОБНОВЛЕНИЕ 2: Этот метод работает, но сообщение / div не показывается достаточно долго для чтения текста.Обнаружено, что это из-за AutoPostBack="true"
.Как я могу вызвать событие после того, как AutoPostBack сделан (я предполагаю, что это то, что мне нужно, чтобы решить проблему)?
function displayDiv(checkbox) {
if (checkbox.checked) {
$("#message1").stop(true, true).show().fadeOut(10000);
$("#message2").hide();
}
else {
$("#message1").stop(true, true).hide();
$("#message2").stop(true, true).show().fadeOut(10000);
}
}
<asp:CheckBox ID="chkNotifyMe" AutoPostBack="True" runat="server" OnCheckedChanged="chkNotifyMe_CheckedChanged" onclick="displayDiv(this)" />
<div id="message1" class="message" ><span>Successfully <small></small></span></div><br />
<div id="message2" class="message" ><span>Removed<small></small></span></div>
(все CSS одинаковы)
Так близкоЯ могу попробовать это: D Еще раз спасибо!
ЗАКЛЮЧИТЕЛЬНОЕ РЕШЕНИЕ Хорошо, я добавил это на свою страницу, чтобы вызывать AutoPostBack через jQuery, а после его публикации отображать мое сообщение
function pageLoad() {
<%# autoLaunchJS %>
$("#chkNotifyMe").click(chkNotifyMe_clicked);
}
function chkNotifyMe_clicked(){
var add = $get("chkNotifyMe").checked == true;
PageMethods.WishList(add, <%#ID%>, OnSucceeded, OnFailed);
}
function OnSucceeded(){
refreshStartPage();
if($get("chkNotifyMe").checked){
$("#messageSuccess").stop(true, true).show().fadeOut(5000);
$("#messageRemove").hide();
}
else{
$("#messageSuccess").stop(true, true).hide();
$("#messageRemove").stop(true, true).show().fadeOut(5000);
}
}