AutoPostBack与jQuery冲突

| 我想这样做,但在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: 此方法有效,但是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)\" />
    
使用该CSS创建标签
<asp:Label id=\"lblChkchnged\" runat=\"server\" CssClass=\"message\" Visible=\"False\" />
然后在您的支票更改事件中设置代码
lblChkchnged.visible = true;
lblChkchnged.text = chkBoc.Checked ? \"Checked\" : \"Unchecked\";
尽管真的为什么不把它留给客户打电话,除非您需要做更多的事情?     

要回复问题请先登录注册