如何在aspx页面中获取用户控件文本框值?

时间:2012-12-07 09:34:58

标签: javascript jquery asp.net

我有一个用户控件ascx文件,其中包含一个文本框

<asp:TextBox ID="textboxDate" runat="server" CssClass="FieldValue" MaxLength="10"
Columns="12" autocomplete="off" Style="padding-right: 18px; border: 1px solid #567890;" />
<ajaxToolkit:CalendarExtender ID="calendarExtenderDate" runat="server" TargetControlID="textboxDate"
PopupButtonID="textboxDate" />

我在我的aspx页面中添加了这个用户控件

  <uc:DateControl ID="dateControlStart" runat="server" RequiredErrorMessage="please enter date" />

我想要这个文本框的值。我怎么能用javascript或Jquery做到这一点。

3 个答案:

答案 0 :(得分:3)

尝试以下

$("input[id*=textboxDate]").val();

由于

答案 1 :(得分:0)

尝试在用户控件中设置公共属性以访问文本框。

示例:

后面的用户控制代码中

 public TextBox MyTextBox{
  get{return this.textboxDate;}

 }

在页面代码后面

dateControlStart.MyTextBox.Text

答案 2 :(得分:0)

由于.NET为控制器创建了自己的id,因此它有点问题。但是有两种解决方法。

1,创建一个包含id的div。

// HTML
<div id="date-container">
    //.. .NET controllers
</div>

// Script
var container = document.getElementById('date-container'),
    input = container.getElementsByTagName('input')[0];

console.log(input.value);

2,在asp:textbox中添加并使用独特的css类,并使用jQuery对其进行检索:

$('.date-input-unique').val();