我想知道如何从TextBox “AddressTexBox”获取值并将其设置为输入标记“txtAutocomplete”的值。任何帮助都是极好的。谢谢!!!
<input type="text" id="txtAutocomplete" name ="txtauto" style="width: 900px" onkeypress = "fillAddress" />    
<asp:Label ID="AddressVerifyLabel" Text=" Verify Address: " runat="server"></asp:Label>
<asp:TextBox ID="AddressTextBox" Columns="20" MaxLength="20" Width="600" runat="server" OnTextChanged ="fillAddress" AutoPostBack="True">
</asp:TextBox>
答案 0 :(得分:0)
一种方法是使用带有onchange
事件
<input type="text" id="txtAutocomplete" name ="txtauto" style="width: 900px" />
<input type="text" id="AddressTextBox" onchange="myFunction()" name ="txtauto" style="width: 900px" />
<script>
function myFunction() {
document.getElementById("AddressTextBox").value = document.getElementById("txtAutocomplete").value ;
}
</script>
另一个是在后端使用c#
<input type="text" id="txtAutocomplete" runat = "server" name ="txtauto" style="width: 900px" onkeypress = "fillAddress" />
和OnTextChanged
事件
txtAutocomplete.Value = AddressTextBox.Text;
答案 1 :(得分:0)
目前还不是很清楚你想做什么,所以我会提供2个选项。而asp:TextBox
和input type="text"
在HTML中是相同的。查看页面源代码并亲自查看。
首先是使用AddressTextBox
事件从txtAutocomplete
获取OnTextChanged
的值。要使其工作,您必须使txtAutocomplete
成为一个aspnet TextBox。
<asp:TextBox ID="txtAutocomplete" runat="server"></asp:TextBox>
<asp:TextBox ID="AddressTextBox" runat="server" OnTextChanged="fillAddress" AutoPostBack="True"></asp:TextBox>
然后在代码背后
protected void fillAddress(object sender, EventArgs e)
{
txtAutocomplete.Text = AddressTextBox.Text;
}
第二种选择是使用JavaScript,正如@Usman所暗示的那样。除非fillAddress
中有更多内容发生,否则这是更好的解决方案,因为它不执行PostBack,从而节省了往返服务器的往返。但是我仍然建议你让txtAutocomplete
成为一个aspnet TextBox。
<asp:TextBox ID="txtAutocomplete" runat="server"></asp:TextBox>
<asp:TextBox ID="AddressTextBox" runat="server" onkeydown="myFunction()"></asp:TextBox>
<script type="text/javascript">
function myFunction() {
document.getElementById("<%= txtAutocomplete.ClientID %>").value = document.getElementById("<%= AddressTextBox.ClientID %>").value;
}
</script>
请注意<%= txtAutocomplete.ClientID %>
的使用。 Aspnet将控件的ID更改为此类ctl00$mainContentPane$AddressTextBox
。因此,如果您使用document.getElementById("AddressTextBox").value
JavaScript将找不到该元素并抛出错误。