Javascript 如何在jquery中获取字段的id?

Javascript 如何在jquery中获取字段的id?,javascript,asp.net,Javascript,Asp.net,我有一个一页,然后该页由一个.aspx文件和一个.ascx文件组成 现在在.ascx文件中,我声明了一个文本框,如下所示 <asp:TextBox runat="server" ID="OrderName" MaxLength="50" Key="OrderNameText" meta:resourcekey="OrderNameResource1"> 现在我想从我的javascript中获取这个文本框的ID,所以我尝试了$(“#OrderName”),但它不起作用 当我检查

我有一个一页,然后该页由一个.aspx文件和一个.ascx文件组成

现在在.ascx文件中,我声明了一个文本框,如下所示

<asp:TextBox runat="server" ID="OrderName" MaxLength="50"  Key="OrderNameText" meta:resourcekey="OrderNameResource1">

现在我想从我的javascript中获取这个文本框的ID,所以我尝试了$(“#OrderName”),但它不起作用

当我检查firebug中的代码时,我注意到这个文本框的id是“ctl00\u ctl00\u contentplaceholder body\u contentplaceholder belowframedContainer\u ucOrderName\u OrderName”。它被附加了一些词

那么,在这种情况下,如何获取id呢

谢谢

Jason使用下面的代码

 var journalTextBoxId = '<%= this.OrderName.ClientID %>';
 var journalId = $("#" + journalTextBoxId).val();
var journalTextBoxId='';
var journalId=$(“#”+journalTextBoxId).val();
通过访问它,或者在声明ASP.Net控件时可以指定为
静态

  alert($("#'<%=OrderName.ClientID %>'").val());
警报($(“#”).val();

在用户控件中,使用C#like创建公共属性:

在当前页面的JS中,按如下方式访问:

var ID = document.getElementById('<%= this.ucOrderName.OrderNameClientID %>');
var ID=document.getElementById(“”);
或者您可以简单地执行以下操作:

var ID = document.getElementById('<%= this.ucOrderName %>_OrderName');
var ID=document.getElementById(“\u OrderName”);

如果需要控件的确切ID,请尝试以下操作:

var $ID = $this.find('#<%= OrderName.ClientID %>');
var$ID=$this.find(“#”);

如果您使用的是visual studio 2010,那么您可以这样使用

<asp:TextBox runat="server" ID="OrderName" ClientIDMode="Static" MaxLength="50"  Key="OrderNameText" meta:resourcekey="OrderNameResource1"></asp:TextBox>
因此,您应该在文本框中使用clientmode=“Static”,并在jquery中使用如下所示

$("#OrderName")

我认为这将对您有所帮助。

如果您需要不懂ASP的人的帮助,您需要向我们展示生成的HTML是什么(浏览器看到的是什么,而不是您的模板是什么)。首先检查浏览器中的元素。。。由于id是动态的,您可以使用其他选择器或选择器组合(类/属性/标记名/位置)选择元素,然后访问它的
id
属性:
$('input[type=checkbox]:eq(3)')。attr('id'))
这可以正常工作,但我不想让它的ClientIDMode将ID声明为静态。。还有别的办法吗?
"ctl00_ctl00_contentPlaceHolderBody_contentPlaceHolderBelowFramedContainer_ucOrderName_OrderName"
$("#OrderName")