我将webform上的输入控件定义为
<input type="text" id="Amount1" class="auto-sum" ClientIDMode="Static" runat="server">
并且在运行时它显示如下。
<input name="ctl00$ContentPlaceHolder1$Amount1" id="Amount1" class="auto-sum" type="text">
当我尝试从CodeBehind获取值时,我可以看到控件名称
我得不到金额。如何获得这样的输入字段的值
答案 0 :(得分:0)
你可以试试这个
TextBox1.Text = Amount1.Value
答案 1 :(得分:0)
我建议不要使用ClientIDMode="Static"
。这可能会在以后引起问题。特别是因为您似乎正在使用ContentPlaceHolder
,这表示母版页。
请考虑以下事项。您可以在母版页上添加带有静态ID的TextBox1
,稍后您会在使用母版页的页面上执行相同操作。您现在在页面上有两个标识为TextBox1
的元素,而不是ctl00$TextBox1
和ctl00$ContentPlaceHolder1$TextBox1
。
如果您出于客户端目的需要,可以随时使用TextBox1.ClientID
<asp:TextBox ID="Amount1" runat="server" CssClass="auto-sum"></asp:TextBox>
<script type="text/javascript">
document.getElementById("<%= Amount1.ClientID %>").value = "It works!";
</script>