获取变量&回发后保留更改

本文关键字:保留 变量 获取 | 更新日期: 2023-09-27 18:09:43

这个问题与:在客户端隐藏div点击

我遇到的问题是,在asp.net的回发事件发生后,点击任何客户端更改重置,我如何保持我正在进行的客户端更改。

第二个问题,我如何从代码后面获得一个变量并将其传递到我的javascript中以执行比较。

Html:

    <div runat="server" id="someDiv1" enableviewstate="true" >
        <asp:LinkButton OnClientClick="Show_Hide_Display()" 
                        ID="lbtnDiv1" 
                        runat="server" 
                        CausesValidation="true" 
                        OnClick="lbtn_onClickServer">
        </asp:LinkButton>
    </div>
    <div runat="server" class="tick" id="div2" style="display:none;" enableviewstate="true">
    </div>
Javascript:

<script type="text/javascript">
function Show_Hide_Display() {
    var div1 = document.getElementById("<%=someDiv1.ClientID%>");
    var div2 = document.getElementById("<%=div2.ClientID %>");
        if (div1.style.display == "" || div1.style.display == "block") {
            div1.style.display = "none";
            div2.style.display = "block";
        }
        else {
            div1.style.display = "block";
            div2.style.display = "none";
        }
}    
</script>

OnClick事件引起回发,在这种情况下,它检查用户,所选的用户名是否可用。

如果它是可用的,显示一个勾号,如果它不是错误的。

我得到了错误的工作,并试图在客户端编程tick。

所以OnClientClick我能够在一些文本和一个刻度之间切换。所以我需要:
  • 后面的代码获取bool结果
  • 回发后保持勾选(如果用户名可用)

我差不多讲完了,但最后两点还是不太明白。

获取变量&回发后保留更改

如果你在页面中使用UpdatePanel,并且假设你试图切换的div不在控制范围内,你可以在部分回发中注入javascript:

就像例如在你的按钮的点击事件上执行部分回发,调用ScriptManager.RegisterClientScriptBlock() ->如何保留部分回发的脚本块?

或者,您可以附加一个结束请求处理程序。这是一些javascript,应该在部分回发后运行。——> ASP。. NET Register Script After Partial Page Postback (UpdatePanel)

这两个问题的答案都在于检查后面代码发送的布尔值。

1——c#

保护无效Page_Load(对象发送者,系统。EventArgs e){

var linkbtn = (Button)Page.FindControl("lbtnDiv1");

linkbtn .Attributes。Add("onClick"、"Show_Hide_Display("+参数 + "')");

}

2-------改变你的javascript

Show_Hide_Display(parameter)

{

如果(参数= = '真的'){

——你的逻辑——

}

其他

{

——你的逻辑

}

}