加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 从javascript和代码隐藏中访问

发布时间:2020-12-15 19:50:42 所属栏目:百科 来源:网络整理
导读:我有一个带有style =“display:none”的div.按下html按钮时div应该可见: function JSAdd() { document.getElementById('divDetail').style.display = "block";} div style="float:left" div id="ctl00_MainContent_upnlLbRD" select size="4" name="ctl00$
我有一个带有style =“display:none”的div.按下html按钮时div应该可见:

function JSAdd() {
    document.getElementById('divDetail').style.display = "block";
}
    <div style="float:left">

    <div id="ctl00_MainContent_upnlLbRD">





            <select size="4" name="ctl00$MainContent$lbRD" id="ctl00_MainContent_lbRD" style="width:188px;">

    <option value="5">one</option>
    <option value="1">two</option>
</select>
<input id="btnAdd" type="button" value="Добавить" onclick="JSAdd();" />
    <input id="btnEdit" type="button" value="Редактировать" onclick="JSEdit();" />
</div>
<div id="ctl00_MainContent_divDetail" style="display:none" clientidmode="static">
    <div id="ctl00_MainContent_upnlDescription">

            <div>

                <span id="ctl00_MainContent_lblDescription">Описание:</span>

                <input name="ctl00$MainContent$txtDescription" type="text" id="ctl00_MainContent_txtDescription" />  

                <span id="ctl00_MainContent_txtDescriptionRequiredFieldValidator" style="color:Red;visibility:hidden;">Описание является обязательным для заполнения</span>

            </div>

            <input type="submit" name="ctl00$MainContent$btnSave" value="Сохранить" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$MainContent$btnSave&quot;,&quot;&quot;,true,false,false))" id="ctl00_MainContent_btnSave" />

????

我需要能够从代码隐藏中再次使div不可见.我不能访问div,除非它是runat =“server”.但是当我添加runat =“server”时,从上面的javascript函数按下按钮时div不会显示.你能帮帮我吗?

谢谢,
大卫

解决方法

您可以通过添加runat =“server”属性来访问代码隐藏中的div.添加此属性确实会改变您在JavaScript中访问元素的方式:

var el = document.getElementById("<%=div1.ClientID%>");
if (el){
    el.style.display = "none"; //hidden
}

有两种方法可以从代码隐藏中调整可见性,但由于您在JavaScript中设置display:none,因此您可能希望在代码隐藏中使用相同的方法:

div1.Style["display"] = "block"; //visible

在代码隐藏中,您还可以将Visible属性设置为false,但这是不同的,因为它将阻止元素被渲染.

编辑

如果div仍显示display:none,则可能在某处影响标记的标记或引用.仔细检查并确保标记有效.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读