【问题标题】:Finding all control and subcontrol ids present in aspx page and corresponding ascx user control查找存在于 aspx 页面和相应 ascx 用户控件中的所有控件和子控件 id
【发布时间】:2013-10-10 14:03:33
【问题描述】:

我正在为此开发一个应用程序,我必须使用 jquery 访问 aspx 页面中的所有控件 ID。我正在寻找一种方法,以便我可以访问所有这些存在的控件 ID。我还应该能够访问子控件 ID,并且我正在使用写在 ascx 页面中的 usercontorls,这些页面在 aspx 中引用。我想要一种使用 jquery 访问当前 aspx 页面中存在的所有控件 id、ascx 页面中对应于 aspx 页面的控件以及子控件的 Id 的方法。我想访问标签 ID、文本框 ID,即使它们是在表格或 div 中指定的。请给我一个方法

【问题讨论】:

  • jQuery 会不管 ASP.NET 这样做,只要使用 $("selector"),例如 $("div") 来查找所有 div
  • 我想查找不同 div 和 asp:content 中存在的标签和文本框的 ID。我想在不使用任何键作为输入的情况下查找所有文本框和标签的 ID
  • 如果你能解释一下为什么你需要这些 ID 会有所帮助吗?
  • 我想为所有这些 id 写鼠标悬停。所以页面中存在的所有标签和文本框都应该有一个鼠标悬停,我将从数据库中获取鼠标悬停文本

标签: c# javascript jquery asp.net


【解决方案1】:

我能想到的最好的回答方法是制作一个自定义 jquery 插件来做到这一点:

jQuery.fn.getIdArray = function() {
  var ret = [];
  $('[id]', this).each(function() {
    ret.push(this.id);
  });
  return ret;
};

然后做类似的事情

var array = $("#mydiv").getIdArray();

【讨论】:

    【解决方案2】:

    我使用通用类名来访问项目中的所有网格视图,因此我能够访问网格视图的每个标题以及 tr 和 td。

    我确保所有网格视图都具有通用类名。我使用$('select') 访问下拉菜单,并使用$("span") 访问复选框和标签,因为它们是在html页面中相应地获取的。然后我编写了相应的 jQuery 代码来做我想做的事情,比如悬停和每个例如:

    $('select').hover ()
    

    【讨论】:

      猜你喜欢
      • 2012-01-11
      • 1970-01-01
      • 1970-01-01
      • 2012-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多