我有一个div:
<div id="postreply">
<asp:Label ID="lbStatus" CssClass="input-large1" runat="server" Text="Close" Width="600px"></asp:Label>
</div>
我尝试在页面加载时隐藏div:
<script type="text/javascript">
window.onload = function() {
var x = document.getElementById('lbStatus').innerText;
if(x == "Close"){
$("#postreply").hide();
}
}</script>
任何人都帮我用lbStatus.Text = Close
来隐藏这个div答案 0 :(得分:6)
你不能简单地使用CSS吗?
#postreply {
display: none; /* onLoad your div will be hidden */
}
答案 1 :(得分:3)
尝试使用$(document).ready
一次,它会在加载HTML文档并且DOM准备就绪时执行,其中window.onload
在完整加载完整页面时执行,包括所有框架,对象和图像
$(document).ready(function() {
if($("#lbStatus").val() == "Close"){
$("#postreply").hide();
}
});
当您使用Asp.Net
时,请尝试使用ClientId
属性
$(document).ready(function() {
if($("#<%=lbStatus.ClientID%>").val() == "Close"){
$("#postreply").hide();
}
});
更改了<%=lbStatus.ClientID%>
而不是lbStatus
参考:http://4loc.wordpress.com/2009/04/28/documentready-vs-windowload/
答案 2 :(得分:2)
你在纯粹的javascript和jQuery之间混淆 如果您不包含jquery库,请使用纯javascript。
<script type="text/javascript">
window.onload = function() {
var x = document.getElementById('lbStatus').innerText;
if(x == "Close"){
// $("#postreply").hide();
document.getElementById('postreply').style.display = 'none';
}
}
</script>
答案 3 :(得分:1)
您似乎需要删除 #
标志。
$( 'postreply')隐藏();
或者,vanilla Javascript:
document.getElementById('postreply').style.display = 'none';
答案 4 :(得分:0)
您可以从头开始隐藏它。
使用 javascript :document.getElementById('lbStatus').style.display = 'none';
并将其恢复为“可见”使用document.getElementById('lbStatus').style.display = "";
或 css :#lbStatus{display: none;}