输入控件类型“代码隐藏中的文本引用”
本文关键字:文本 引用 隐藏 控件 类型 代码 输入 | 更新日期: 2023-09-27 18:27:28
我有以下代码
<input runat="server" id="Name" type="text" name="Name"/>
cmd.parameters.addwithvalue("@NAME", Name.value);
我正在尝试捕获我在控件中输入的数据,并且(Name.value)始终等于"不管我打什么。我知道它们被正确地映射了,就像我把它切换到一个文本框一样——它工作得很好——我希望这个输入也能工作。
编辑这似乎奏效了——不确定这是否是正确的方法——但有什么原因可以奏效,但Name.value不行?
cmd.Parameters.AddWithValue("@NAME", Request.Form["Name]);
如果要在代码背后使用html元素,必须添加runat=server
属性。
<input runat="server" id="Name" type="text" name="Name" ClientIdMode="static"/>
将ClientIdMode
设置为static
应该允许您在代码隐藏中使用与html中相同的id,只是要小心不要创建冲突。
名称将强制转换为HtmlInputControl
,当页面返回时,Name.Value
将具有输入的文本的值。那么你可以做:
cmd.Parameters.AddWithValue("parameterename", Name.Value);
runat="server"
使代码背后的东西可用。
html控件应该在表单标记内,并且还需要添加runat="server"
属性。然后你可以通过id访问它。
cmd.parameters.addwithvalue("parameterename", Name.Value);
请注意,如果输入id是Name
,则不能将Text作为"name.text"
获取,您需要获取它的Value