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

Javascript 如何在aspx页面中获取用户控件文本框值?,javascript,jquery,asp.net,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="calendarEx

我有一个用户控件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执行此操作。

尝试在用户控件中使用公共属性来访问文本框

例如:

隐藏在用户控制代码中

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

 }
dateControlStart.MyTextBox.Text
页内代码隐藏

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

 }
dateControlStart.MyTextBox.Text

尝试在用户控件中使用公共属性,以访问文本框

例如:

隐藏在用户控制代码中

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

 }
dateControlStart.MyTextBox.Text
页内代码隐藏

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

 }
dateControlStart.MyTextBox.Text

由于.NET为控制器创建了自己的id,所以有点问题。但是有两种方法可以解决这个问题

1,创建一个id为
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);

由于.NET为控制器创建了自己的id,所以有点问题。但是有两种方法可以解决这个问题

1,创建一个id为
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);
试试下面的方法

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

试试下面的

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

谢谢

谢谢,它正在工作,你能解释一下为什么我们写$('#textboxDate').val()时,这个值没有出现,这是怎么工作的吗?这是因为在webforms中,id将被更改为masterpage中的名称,并将自动id,因此如果我们检查id包含“*=”的元素,我们将得到该元素。谢谢,它正在工作。你能解释一下为什么我们写$('#textboxDate').val()时,这个值没有出现,这是怎么工作的吗?这是因为在webforms中,id将被更改为masterpage中的名称,并将自动id,因此如果我们检查id包含“*=”的元素,我们将获得该元素。