我有一个外部Javascript文件,它有很多方法。我有一个aspx页面,其中包含许多控件,如asp文本框,按钮等。在这个aspx页面中,我使用的是用户控件。此用户控件具有文本框。 我的外部java脚本函数在像aspbox这样的常规控件上被调用。但是当我试图在aspx页面上调用用户控件时,同样的javascript功能,这个javascript函数没有被调用。 请告诉我为什么没有被叫,有什么我想念的。 下面是调用控件的示例JS。这里JS函数在Asp Textbox上调用,但不在用户控件上调用。
<div>
<asp:TextBox ID="txtName" runat="server" onblur="MyJsFunc();"></asp:TextBox>
<uc1:usertextbox id="txtUserTxt" runat="server" onblur="MyJsFunc();" />
</div>
答案 0 :(得分:0)
这是未经测试的,因为我做了aspx已经有一段时间了,所以它可能不是100%准确。但是请说你的用户控制代码是这样的:
public partial class UserTextBox : UserControl
{
public string OnBlur {get;set;} // add the property for onblur
protected void Page_Load(object sender, EventArgs e) // or can be on init
{
txtUserName.OnBlur = OnBlur;
}
}
所以在上面,txtUserName
是你的普通文本框控件的id(你在usercontrol的aspx上创建的),你只是将你通过usercontrol传递给onblur的onblur属性绑定普通文本框的属性