开发者社区> 问答> 正文

请问js监听问题,如何监听调用日期控件的 input 值是否改变

<s:textfield name="payDate" id="payDate" tabindex="6

onclick="popUpCalendar(this,fromContractbill.payDate,'yyyy-mm-dd');"
readonly="true"
onblur="count_pay()"
onchange="count_pay()"

cssClass="x-form-field-noborder" />

不管用onblur 还是onchange 都监听不到 数据改变,

展开
收起
a123456678 2016-07-15 14:58:07 4302 0
1 条回答
写回答
取消 提交回答
  • js赋值,本就没获取焦点,所以,onblur必然无效。
    而onchange的话,你会发现也是在失去焦点之后,才会触发,本就没焦点,何来失去焦点。所以会发现,一般是用keyup事件来监听值的变化。
    要想完美的话,找找那个日历控件的代码,利用AOP,加点东西。比如加上获取焦点,再失去焦点,那么,你的onblur就会有效了。。。注意,这个时候,onchange是无效的,为什么?没改变东西。

    2019-07-17 19:57:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript异步编程 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载