javascript - 从客户端引用 asp 服务器控件

标签 javascript asp.net

这个问题对某些人来说可能听起来很愚蠢,但我必须确定一下。

iv'e 得到了一个不可见的控件(visible = false) 我希望它在某些条件下变得可见,例如 onmoueover 某个文本框,

我可以在服务器控件上执行此类客户端事件吗?

iv'e 注意到,如果控件设置为在服务器上运行,我什至无法发出 onmouseover 事件。

总而言之,有没有一种方法可以使服务器控件从客户端可见而无需 必须发回服务器。

感谢之前的回答,但我遇到了一个新问题:

我的控件是一个放置在内容页面内的日历,

当我单击文本框时,我希望它出现,但当它设置为 Visible=false 时 客户端脚本无法找到它:

     function Show_Calander() {
      debugger;
      var c = document.getElementById('<%= calander1.ClientID %>');
      c.visible = true;
  }

  <input type="text" id="txt_date" runat="server"  onclick="Show_Calander();"/>
  <asp:Calendar ID="calander1" runat="server" Visible="False"></asp:Calendar>

我可以在服务器端执行此操作,但我只是想通过不为每件小事都访问服务器来提高性能。

我有什么想法可以实现这一点吗?

最佳答案

是的,这对于 javascript 来说当然是可能的。每个控件都有一个 ClientID 属性,可用于从 javascript 引用它。下面是一个使用 jQuery 的快速示例,介绍如何使特定的 Asp.Net 控件在单击事件上可见

<asp:TextBox ID="txtUsername" Runat="server" />
<button id='theButton'>Make it Visible</button>

JQuery 代码

$(document).ready(function() {
  $('#theButton').click(function() {
    var id = '#' + '<%= txtUsername.ClientID %>';
    $(id).show();
  });
});

关于javascript - 从客户端引用 asp 服务器控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7462656/

相关文章:

asp.net - 尝试使用未为此报表服务器注册或不受此版本支持的数据扩展

javascript - 如何等到动画完成后再重新调用函数

javascript - 我的 radio 更改事件仅在应用程序中首先触发

asp.net - 在 asp.net 中获取母版页错误

javascript - ASP.Net 变量到 JavaScript

c# Asp.net 获取在 javascript 中设置的 Cookie 过期时间总是返回 01.01.0001

c# - 在 ASP.NET Web 表单中显示来自 Windows 服务的信息

javascript - 自定义 javascript 函数/jQuery 回调的正确语法

javascript - 如何处理只被一个函数使用的函数

javascript - 使用 RSA OAEP 加密和解密