JavaScript实现TextBox值改变触发事件

作者:微光

时间:2026-10-27

浏览:321

本文介绍如何使用JavaScript监听TextBox控件的值变化。通过记录初始值并在失去焦点时对比当前值,判断内容是否发生修改。若检测到变化,则自动触发指定按钮的点击事件以重新加载数据,否则更新初始值以备后续检测。

文章目录

JavaScript实现TextBox值改变触发事件

代码示例如下:

<script language="javascript" type="text/javascript">
定义变量 firsty,用于存储页面初始加载时的年份值。
定义变量 firstm,用于存储页面初始加载时的月份值。
定义变量 secondy,用于存储 onchange 事件触发后的年份值。
定义变量 secondm,用于存储 onchange 事件触发后的月份值。
定义变量 panduan,初始值为 0,用于标识值是否发生更改。
定义函数 onloadload(),用于在页面加载时给全局变量赋予初始值。需在 body 标签的 onload 事件中调用,例如:<body onload="onloadload()">
    {
firsty = document.getElementById("txtYear").value; // 获取页面初始加载时的年份值
firstm = document.getElementById("txtMonth").value; // 获取页面初始加载时的月份值
secondy = document.getElementById("txtYear").value; // 获取 onchange 触发后的年份值
secondm = document.getElementById("txtMonth").value; // 获取 onchange 触发后的月份值
    }
function changeym() // 在 onfocusout 事件触发时调用,用于判断值是否发生变化 onfocusout="changeym();" { secondy = document.getElementById("txtYear").value; secondm = document.getElementById("txtMonth").value; // 进行数值转换以处理月份格式差异(如 3 与 03) if(parseInt(secondy,10) != parseInt(firsty,10) || parseInt(secondm,10) != parseInt(firstm,10)) { panduan=1; // 标记为已更改 alert('重新检索数据!'); document.getElementById("btnCurPayLoad").click(); // 触发按钮点击事件 } else { firsty=secondy; // 更新初始值为当前值,以便后续再次比较 firstm=secondm; } }
</script>

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章