控制由jQuery启用/禁用的ASP.NET相关控件的初始启用状态

时间:2010-01-03 22:03:43

标签: asp.net jquery

到目前为止,我已经看到(我正在使用以下)脚本来显示/隐藏div或其他控件,具体取决于ASP.NET中的另一个控件

$('[id$=myRadio_0]').click(function() { $('[id$=myDiv]').show(); });

$('[id$=myRadio_1]').click(function() { $('[id$=myDiv]').hide(); });

当然,我的div喜欢

<div id="myDiv" runat="server" visible="false">

,当用户选择radiobuttonlist的任一选项时,该工作正常。

然而,当我在我的Page_Load上为后面的代码指定了该radiobuttonlist的值为1或是时,这不是(也可能不是)被jQuery捕获,并且即使控件有一个,我的div仍然是不可见的值为/。

那么,我是否需要从后面的代码中设置该div的可见性,或者在我为代码后面的主要控件设置值后,jQuery中是否有一种方法可以强制扫描这些依赖项?

1 个答案:

答案 0 :(得分:1)

你可以做的事情很多。

1)将您的div更改为Panel服务器控件(<asp:Panel id="myDiv" runat="server">),ID为“myDiv”。然后在后面的代码中,当您将radiobutton设置为1时,您还可以设置面板控件的可见性。您当前的jQuery代码仍然有效。

2)编写另一行jquery以在页面加载时测试div可见性。像,

  if ($('[id$=myRadio_0]').val() == 1 && $('[id$=myDiv]:hidden')
  {
      $('[id$=myDiv]').show();
  }

就个人而言,我会选择选项1,因为您已经在设置代码隐藏中的表单状态,我不会将“设置”代码拆分为客户端和服务器代码。 / p>