访问HTML和Asp.net控件的通用JavaScript函数

Generic JavaScript function to access HTML and Asp.net Control?

本文关键字:JavaScript 函数 控件 HTML Asp net 访问      更新时间:2023-09-26

是否可以编写一个javascript函数,通过其"id"获取元素

我试着用这个功能

function getEleById(ele,IsServerElemt) {
      var elmt ;
      if(IsServerElemt) 
          elmt  = '<%='+ ele + '.ClientID%>' ;
      else 
          elmt = ele;
      return document.getElementById(elmt);
}

这里我们有HTML以及Asp.Net文本框。

<input type="text" id="txtname" />
<asp:TextBox ID="txtname" runat="server"></asp:TextBox>

我试着调用下面的函数

var name = getEleById('txtname',true) ;

这里的true指定txtname是服务器控制

是否可以为HTML和Asp.Net控件提供一个通用的javascript方法。

如有任何帮助,我们将不胜感激。

感谢

创建您的文本框。

<asp:TextBox ID="txtname" runat="server"></asp:TextBox>

你可以通过访问它

var textbox= $find("<%=txtname.ClientID %>");

使用JQuery的CSS选择器怎么样?

1) $('.txtName') //JQuery CSS selector

带有

<asp:TextBox ID="txtname" class="txtName" runat="server"></asp:TextBox>

您可以通过这种方式将所有脚本放入外部JS文件中。JQuery CSS选择器

阅读本文。它解释了生成元素ID的各种方法。

我所做的是创建这样的文本框:

<asp:TextBox ID="txtname" runat="server" ClientIDMode="Static" />

将ClientIDMode设置为static会将呈现的ID设置为您在Asp.Net标记中键入的ID。它将显示为这样的东西:

<input id="txtname" name="?????" />

然后你的javascript可以这样写:

function getEleById(elementID) {
    return document.getElementById(elementID);
}