我有一个显示加载符号的div。我正在设置下拉框更改的可见性。我想在SelectedIndexChanged
方法完成后在C#中将其可见性设置为false。
以下是 div 标记:
<div runat="server" clientidmode="Static" id="loadingImage" class="loadingImage" >
<img class="loadingImg" src="../Images/ajax-loader.gif" />
</div>
这是 jQuery 功能:
$(document).ready(function () {
//$('#loadingImage').hide();
var modal = document.getElementById('loadingImage');
modal.style.display = "none";
$("#selectSegment").change(function () {
var modal = document.getElementById('loadingImage');
modal.style.display = "block";
});
});
这就是我试图在 C#
中设置可见性的方法protected void selectSegment_SelectedIndexChanged(object sender, EventArgs e)
{
ckBLBusinessUnits.Visible = true;
loadingImage.Style["display"] = "none";
}
我在C#中尝试了各种方式,例如将可见性设置为false等,但没有任何效果。请帮助。
答案 0 :(得分:3)
改变这个:
loadingImage.Style["display"] = "none";
对此:
loadingImage.Style.Add("display", "none");
答案 1 :(得分:0)
您可以使用隐藏和显示方法来执行该操作。
<div runat="server" clientidmode="Static" id="loadingImage" class="loadingImage">
<img class="loadingImg" src="loading.gif" />
</div>
<asp:DropDownList ID="selectSegment" ClientIDMode="Static"
runat="server">
<asp:ListItem Value="0">none</asp:ListItem>
<asp:ListItem Value="1">display</asp:ListItem>
</asp:DropDownList>
JS
$(document).ready(function () {
var modal = document.getElementById('loadingImage');
modal.style.display = "none";
$("#selectSegment").change(function () {
if (this.value === "1") {
$("#loadingImage").show();
} else {
$("#loadingImage").hide();
}
});
});
答案 2 :(得分:0)
div标签位于updatepanel
之外,移动div
内的updatepanel
解决了问题。