回帖后丢失CSS类

问题描述 投票:0回答:4

我有一个javascript,通过这个javascript我可以动态地改变列表的css类。

我的列表。

 <div class="BreadCrumbDiv">
            <ul id="breadcrumbs-two">
                <li><a href="#" onclick="changeClass(a1);" class="current1" id="a1">Step1
                    and user</a></li>
                <li><a href="#" onclick="changeClass('a1');" id="a2">Step2</a></li>
                <li><a href="#" onclick="changeClass('a1');" id="a3">Step3</a></li>
                <li><a href="#" onclick="changeClass('a1');" id="a4">Step4</a></li>

            </ul>
        </div>

Java脚本。

   function changeClass(elementid) {
        var lis = document.getElementById(elementid);
        lis.className = "current";
        lis.className = "current1";
    }

现在,我在我的按钮中调用了这样的javascript。

 <asp:button id="btnNextODCDetails" runat="server" text="Next" cssclass="Button" onclientclick="changeClass('a2');"/>

但是改了css样式后,一旦回帖就不能用了。我不想使用更新面板。请有人帮助我。

感谢提前Gulrej

javascript asp.net css
4个回答
1
投票

当你回传数据时,控制树将从aspx标记中重新创建,所以无论你在客户端对html元素做了什么修改,都会丢失。


0
投票

当页面完全发布并再次渲染时,您将失去所有客户端代码(JS)的变化。

如果你仍然需要,那么就使用隐藏字段或其他东西将信息持久化,并在页面加载时检查相同的信息,然后在客户端设置它。

你可以使用以下代码来实现这个客户端

jQuery。

 $(document).ready(function(){ // your checking});

jQuery: JavaScript: DOMContentLoaded

<script>
  document.addEventListener("DOMContentLoaded", function(event) {
    console.log("DOM fully loaded and parsed");
  });
</script>

IE。

object.addEventListener("DOMContentLoaded", handler, useCapture) //IE model

0
投票

我知道答案了 我修改了一下我的脚本。我在点击按钮事件时调用了这个脚本。

  string script = " $(document).ready(function () { $('#breadcrumbs-two li #a2').addClass('current');  $('#breadcrumbs-two li #a2').removeClass('current');  $('#breadcrumbs-two li #a2').addClass('current1');  });";
        ClientScript.RegisterClientScriptBlock(this.GetType(), "function", script, true);

Gulrej


0
投票

在客户端使用这段代码,就在Page_Load之后:其实对我来说是有效的。

ScriptManager.RegisterStartupScript(Me.Page, GetType(Page), String.Format("StartupScript"), "<script type=""text/javascript""> GetAttributeName(); </script>", False)
© www.soinside.com 2019 - 2024. All rights reserved.