jquery input change事件 获取data数据

<input type="text" οnchange="scorebox(this);" class="scorebox form-control" name="score"  number="true" value="" maxlength="100" data-stuid="1" data-field="score">

function scorebox(obj){
    console.log(obj);
    var stuid = $(obj).data('stuid');
    var field = $(obj).data('field');
    alert(stuid);
    alert(field);
}

对象转jq $() 

 

 

如果 input 元素的 `readonly` 属性为 `true`,则不能直接修改其 value 值,但可以通过其他方式来改变它,例如通过 JavaScript 或 jQuery 来修改其 value 值。虽然 `change()` 方法可以监听 input 元素的 value 值变化,但它无法监听 `readonly` 属性元素的 value 值变化。 因此,我们可以使用 `setInterval()` 方法来定时检测 input 元素的 value 值是否有变化,或者使用 `MutationObserver` 来监听 input 元素的属性变化。 例如,使用 `setInterval()` 方法: ```javascript var previousValue = $('input[readonly]').val(); setInterval(function() { var currentValue = $('input[readonly]').val(); if(currentValue !== previousValue) { console.log('input的value值变化了'); previousValue = currentValue; } }, 100); // 每100毫秒检测一次 ``` 这里使用了一个变量 `previousValue` 来存储上一次检测到的 value 值,然后使用 `setInterval()` 方法每隔一定时间检测一次 value 值是否有变化,如果变化了就触发相应的回调函数。 或者,使用 `MutationObserver` 方法: ```javascript var targetNode = $('input[readonly]').get(0); var observer = new MutationObserver(function() { console.log('input的value值变化了'); }); var config = { attributes: true, childList: false, characterData: false, attributeFilter: ['value'] }; observer.observe(targetNode, config); ``` 这里使用了 `MutationObserver` 方法来监听 input 元素的属性变化,其中 `attributes` 属性设置为 `true` 表示要监听属性变化,`attributeFilter` 属性设置为 `['value']` 表示要监听 value 属性的变化。每次监听到 value 值变化时,就会触发相应的回调函数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值