在ASP.NET代码中动态定义onblur事件

时间:2010-11-17 05:04:20

标签: asp.net javascript-events lost-focus

我正在寻找的是从C#ASP.NET代码动态创建两个文本框(普通文本框或HTML输入文本,我不介意)。

然后我尝试(并且失败)定义在第一个文本框失去焦点时触发的事件,因此,应该将第一个文本框中写入的内容复制到第二个文本框中。

我尝试使用onblur()事件,但我遇到了一个问题...... 由于onblur事件的函数体应该用JavaScript编写,因此我在C#ASP.NET文件中创建的两个文本框将不为JavaScript代码所知......

有没有办法在default.cs中编写onblur事件的主体...?或许我应该找另一种方式?

1 个答案:

答案 0 :(得分:2)

请尝试以下代码:

<强>标记

<asp:PlaceHolder runat="server" ID="textBoxPlaceHolder"></asp:PlaceHolder>

<强>代码隐藏

TextBox t1 = new TextBox();
t1.ID = "textBox1";

TextBox t2 = new TextBox();
t2.ID = "textBox2";

textBoxPlaceHolder.Controls.Add(t1);
textBoxPlaceHolder.Controls.Add(t2);

String javascript = "javascript:document.getElementById('" + t2.ClientID + "').value=this.value;";
t1.Attributes.Add("onblur", javascript);