我在页眉中有一个JavaScript函数,用于更改页面中内容的可见性:
<script type="text/javascript">
// <![CDATA[
function toggleVis(id1, id2, id3) {
var element = document.getElementById(id1).style.visibility;
if (element == 'hidden') {
document.getElementById(id1).style.visibility = 'visible';
document.getElementById(id2).style.visibility = 'visible';
document.getElementById(id3).style.visibility = 'visible';
}
else {
document.getElementById(id1).style.visibility = 'hidden';
document.getElementById(id2).style.visibility = 'hidden';
document.getElementById(id3).style.visibility = 'hidden';
}
}
// ]]>
</script>
当我在updatepanel中使用单选按钮时,它可以正常工作:
<dx:ASPxRadioButton ID="RB1" CssClass="btnInline" runat="server" Text="Yes">
<ClientSideEvents CheckedChanged="function(s, e) { toggleVis('Label33', 'textbox','Label34');}" />
</dx:ASPxRadioButton>
<dx:ASPxLabel ID="Label33" CssClass="btnInline" runat="server" Text="Label33" Style="visibility: hidden" />
<dx:ASPxTextBox ID="textbox" CssClass="btnInline" runat="server" Style="visibility:hidden" Width="40px" />
<dx:ASPxLabel ID="Label34" CssClass="btnInline" runat="server" Text="Label34" Style="visibility: hidden" />
问题是当我单击按钮清除表单时,之后通过检查单选按钮javascript不起作用。 我已经尝试了一些互联网上的东西,但我无法做到,对不起我的英语。
答案 0 :(得分:0)
使用add_endRequest()。这将在部分回调中触发。
<script type="text/javascript">
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(toggleVis);
</script>
.aspx
页面的<head>
标记中。
会工作:))答案 1 :(得分:0)
Prog是对的,当页面部分回发时,您的功能将不会被调用。为了确保每次调用它时都会调用它,如: window.onload = function(){toggleVis(id1,id2,id3); Sys.WebForms.PageRequestManager.getInstance()。add_endRequest(toggleVis);}; function toggleVis(id1,id2,id3){}