在页面上运行JS函数加载VB> NET

时间:2017-04-06 19:22:10

标签: javascript jquery css asp.net vb.net

我有一个侧栏div,我希望在页面加载时隐藏它。我尝试在pagerender中使用注册启动脚本调用JS函数,并添加" style =" display:none;""。我目前有一个相同的JS调用,但在控制点击,它工作正常......但我希望div最初被隐藏。

编辑:使用prerender在localhost上工作,但不在服务器上工作......

的.aspx:

    <div id="mySidenav" class="sidenav">
        <a href="javascript:void(0)" class="closebtn" onclick="closeNav()">&times;</a>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
        Code...
        </asp:UpdatePanel>
    </div>

JS:

function openNav() {
        document.getElementById("mySidenav").style.width = "250px";
        document.getElementById("main").style.marginLeft = "250px";

    }

    function closeNav() {
        document.getElementById("mySidenav").style.width = "0";
        document.getElementById("main").style.marginLeft = "0";
        document.body.style.backgroundColor = "white";
    }

codebehind.vb:

Private Sub Page_PreRender(sender As Object, e As System.EventArgs) Handles Me.PreRender
    ScriptManager.RegisterStartupScript(Me, Me.GetType(), "InitializePage", "InitializePage();", True)
    ScriptManager.RegisterStartupScript(Me, Me.GetType(), "closeNav", "closeNav();", True)
End Sub

你知道我可以在页面加载时隐藏这个div /关闭它吗?

1 个答案:

答案 0 :(得分:0)

最简单的方法是添加&#34;关闭&#34;样式属性到初始标记。 也就是说,最好将这些属性放在CSS中并引用它们。 请参阅下面的示例:

.navopen{
width: 250px;
margin-left: 250px;
}

.navClosed{
width: 0;
margin-left: 0;
}

你的JS看起来像:

function openNav() {
        document.getElementById("mySidenav").className = "navOpen";
    }

    function closeNav() {
        document.getElementById("mySidenav").className = "navClosed";
    }

这可能不准确,但应该给你一个想法