C#中如何获取已禁用的动态文本框字段的值
已禁用动态更新文本框的取值方法
disabled属性仅限制用户手动操作文本框,不会阻碍脚本读取它的内容,哪怕值是通过计算逻辑动态更新的,也可以正常获取到实时值,具体实现如下:
- 原生JavaScript写法
直接通过id选中元素读取value属性即可拿到最新值:
const currentValue = document.getElementById('TlNo').value; // 拿到值后直接处理即可
如果需要在值每次动态更新时自动触发获取逻辑,可以用MutationObserver监听属性变化:
const targetInput = document.getElementById('TlNo'); // 初始化监听器 const valueObserver = new MutationObserver(function(mutationsList) { for(let mutation of mutationsList) { if (mutation.attributeName === 'value') { const updatedValue = targetInput.value; // 此处写值更新后的处理逻辑 console.log('最新值为:', updatedValue); } } }); // 启动监听,只监听属性变动 valueObserver.observe(targetInput, { attributes: true });
- jQuery写法(项目引入jQuery的场景下可直接用)
const currentValue = $('#TlNo').val();
注意:不要使用
getAttribute('value')或者jQuery的.attr('value')读取,这两个方法只能获取到页面初始渲染时的静态value值,无法拿到动态更新后的最新内容。
内容的提问来源于stack exchange,提问作者Tester
相关产品推荐
相关产品推荐

