我正在尝试编写一个 aspx 页面,我将一些服务器端值传递给 Javascript。服务器端标记正在从 <%
更改至 <%
<asp:TextBox
ID="txtOriginalNo"
runat="server"
onkeyup="javascript:EnterKeyPress(<%=ibtnSubmit.ClientID%>,event);"
TabIndex="1"
MaxLength="13"
></asp:TextBox>
这在运行时被转换为:
<input
name="txtOriginalNo"
type="text"
maxlength="13"
id="txtOriginalNo"
tabindex="1"
onkeyup="javascript:EnterKeyPress(<%=ibtnSubmit.ClientID%>,event);"
/>
谁能告诉我这是为什么?
最佳答案
您不能在服务器控件内使用服务器标记。从后面的代码设置属性:
txtOriginalNo.Attributes["onkeyup"] = "EnterKeyPress(" + ibtnSubmit.ClientID + ",event);"
注意:不要在事件属性中使用 javascript:
协议(protocol)。当您将 Javascript 代码放入 URL 时使用它,如果您在事件属性中使用它,它就会变成标签。
关于asp.net - 为什么 < 在运行时被转换为 <,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1232665/