asp.net - 将 Javascript 与 ASP.Net 控件结合使用

标签 asp.net javascript events

在使用 ASP.Net 控件时设置客户端“onclick”事件是否有最佳实践?仅添加 onclick 属性会导致 Visual Studio 发出警告,提示 onclick 不是该控件的有效属性。通过代码隐藏在 Page_Load 事件期间添加它是可行的,但没有我想要的那么清晰。

这是唯一的两个选择吗?有没有正确的方法可以做到我所缺少的?

谢谢! 埃里克·西普尔

最佳答案

**只是对答案的预先说明:VS 中的 HTML 验证通常是废话。它提示那些在现实生活中有效的东西,即使这些东西是不好的做法。但有时你必须打破规则才能完成任务。

每个 ASP.NET 页面(2.0 及更高版本)都带有 ClientScriptManager 。您可以使用它从服务器端代码注册 javascript。当页面上的 HTML 控件全部存在于 DOM 中时,您可以传入 javascript,在页面加载后在控件上注册事件。

它在页面上提供了一个单一的、统一的位置来动态添加 JavaScript,这并不是一件坏事。然而,它非常丑陋。

在 ASP.NET 服务器控件模型消亡的这个时期,您可能希望按照 ASP.NET MVC future 的方式设置事件。获取 jQuery 的副本并将其添加到您的网站。然后您可以轻松注册您的事件:

  <html>
  <head>
    <script type="text/javascript" src="jquery.js"></script>
    <script type="text/javascript">
      $(document).ready(function(){
        $("controlId").bind("click", function(e) { /* do your best here! */ });
      });
    </script>
  </head>
  <!-- etc -->
  </html>

关于asp.net - 将 Javascript 与 ASP.Net 控件结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/182587/

相关文章:

asp.net - DynamoDB 全局二级索引的一致性读取

javascript - asp 中的新行 :repeater by java script

javascript - 如何修复 Bootstrap 覆盖的可访问性

javascript - 如何让div框着色后点击功能停止工作?

.net - CLR 是否知道有关事件的任何信息?

c# - 在 C# 中附加\分离事件处理程序的不同方式有什么区别

jquery绑定(bind)按钮点击事件失败

c# - 应用程序停止生成登录 cookie

javascript - 不能用字符串数组编写突变

c# - 响应重定向 '+'