文本框onchange未触发

时间:2014-09-16 16:15:28

标签: javascript asp.net

使用Javascript库 - Calendar_Impl.js进行日历控件。文本框旁边有一个图像,单击该图像,将显示日历。选择该日历中的日期将填充该文本框中的日期。

<asp:textbox onchange="chkDate();"></asp:textbox>
<img onclick="javascript: showCalendar();"/>

我想在用户选择日期后对该日期进行检查。但是onchange或onblur根本不起作用。当手动输入文本时,chkDate()工作。单击图像填写日期不起作用。

在不打扰calendar.js的情况下,我可以做些什么来解雇这个事件。

1 个答案:

答案 0 :(得分:1)

HTML听众onchangeblur仅在您关注输入字段时才有效。我不是100%肯定,但我认为你可以使用javascript监听器调用该函数。尝试这样的事情:

在文本框中添加ID:

<asp:textbox id="chkDateTextbox" onchange="chkDate();"></asp:textbox>

添加javascript onchange listener:

<script type="text/javascript">
    window.onload= function () {
        if(window.addEventListener) 
        {
            document.getElementById('chkDateTextbox').addEventListener('change', chkDate, false);
        } 
        else if (window.attachEvent)
        {
            document.getElementById('chkDateTextbox').attachEvent("onchange", chkDate);
        }
    }
</script>