如何使用Javascript获取位于Anchor标签旁边的文本框的值?

时间:2012-04-05 07:25:30

标签: javascript asp.net textbox anchor

我在锚标记内有一个文本框。我希望使用JavaScript获得它的价值。 我的代码是

<a rel="tooltip" title="This information comes from the Income/Expense worksheet.">
  <span class="TooltipTextBox">    
          <asp:TextBox ID="txt_Helo" runat="server" CssClass="small_text_box"  ReadOnly="true" TabIndex="-1" BackColor="#CCCCCC" size="15">
          </asp:TextBox>
  </span>

4 个答案:

答案 0 :(得分:2)

我会建议JQuery(编辑:如果你在你的网站上使用更多的JS而不是仅使用它来获得这个值)。如果你只是想要这个文本应该有效:

var Text = $("#<%= txt_Helo.ClientID %>").val();

基本上,您使用ASP.NET已分配给该控件的ID来访问TextBox。

没有JQuery:

var Text = document.getElementById("<%= txt_Helo.ClientID %>").value;

答案 1 :(得分:1)

首先,您需要弄清楚文本框的客户端ID。实际上这个ID是独立于文本框是否包含在一个acnhor内部。因此,您可以使用ASP.NET并执行以下操作:

<script>var clientID = "<%=txt_hello.ClientID%>"</script>

然后,您可以使用ID:

访问文本框
<script>var txtBoxElement = document.getElementById(clientID);</script>

然后您可以访问txtBoxElement的值。

另一种方法纯粹基于JS,但你不会知道确切的客户端ID,所以使用jQuery来利用css选择器:

<script>var textBoxVal = $("a span.TooltipTextBox input").val();</script>

答案 2 :(得分:1)

我想你不必在asp.net中做更多的事情

var value = document.getElementById('<% =txt_Helo.ClientID %>').value;

答案 3 :(得分:0)

我不熟悉asp,所以,不确定<asp:TextBox>会产生什么,但如果它有一个id,为什么它是一个锚点的孩子呢?为什么不用它的id来获取它的价值?