我想在ASP.NET中执行this。我将如何在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:
此方法有效,但message / 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再次感谢!
最终解决方案
好吧,我将其添加到页面中以通过jQuery调用AutoPostBack,并在其发布后显示我的消息
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);
}
}
最佳答案
您可以同时具有客户端代码和服务器逻辑以进行服务器控制。如果该div的显示仅是您计划要做的,那么它就是纯视图逻辑,并且与javascript并发回服务器并刷新视图肯定是浪费的。
您可以稍作更改以执行此操作
function displayDiv(checkBox) {
if (checkBox.checked) {
$("#message1").stop(true,true).show().fadeOut(4000);
$("#message2").hide();
}
else {
$("#message1").stop(true,true).hide();
$("#message2").stop(true,true).show().fadeOut(4000);
}
}
和
<asp:Checkbox ID="chkBox" AutoPostBack="True" runat="server"
onCheckedChanged="chkBox_CheckedChanged" onclick="displayDiv(this)" />