如何在客户端代码中捕获LostFocus事件?

时间:2009-12-23 10:32:36

标签: asp.net telerik client-side

这真是一个愚蠢的新手问题,但我仍然在学习ASP.NET的问题,而我自己也无法解决这个问题......<腮红>

我正在使用第三方控件(Telerik RadTimePicker)。其他人设计了表单,我只想在控件失去焦点时在客户端捕获一个事件,这样我就可以根据这个控件的值来设置另一个控件的值。但我找不到任何可以用来做这件事的事件!

以下是现有代码:

<telerik:RadTimePicker ID="timeStart" runat="server">
  <TimeView runat="server" OnClientTimeSelected="OnClientTimeSelected">
  </TimeView>
</telerik:RadTimePicker>

正如您所看到的,如果用户按下时间选择器并点击选择它的时间,那么已经存在javascript代码 - 但是没有什么可以处理用户输入时间然后选中标签的情况控制。

我该怎么做?

2 个答案:

答案 0 :(得分:2)

因为RadTimePicker有效地由RadDateInput组成,所以您可以使用随附的所有事件:

http://www.telerik.com/help/aspnet-ajax/input_clientsideonblur.html

所以你的代码看起来像这样:

<telerik:RadTimePicker ID="timeStart" runat="server">
            <TimeView ID="TimeView1" runat="server" OnClientTimeSelected="OnClientTimeSelected">
            </TimeView>
            <DateInput ClientEvents-OnBlur="timeStart_onBlur">
            </DateInput>
</telerik:RadTimePicker>

答案 1 :(得分:0)

onBlur是失去焦点的事件 - here是一个参考。

编辑:对于RadTimePicker,您需要知道要将处理程序附加到的基础HTML控件的ID(即输入文本框)。您可以通过查看呈现页面的来源或使用类似Firebug的内容来找到它。

获得ID后,您可以使用javascript附加事件处理程序

例如在JQuery中

$("id_of_textbox").bind("blur", function(e){
      //Code in here
    });