Jquery 工具:Rangeinput 在输入更改时获取值
我使用 Jquery 工具 rangeinput。
例如我有:
<input id="testId" title="test" class="range" type="range" name="test" min="0" max="3000" value="15" />
和脚本:
$(".range").rangeinput();
$("#testId").live('change', function() {
console.log($(this).data("rangeinput").getValue());
});
所以默认情况下我的值是 15。然后我输入我的输入 25,但控制台中的结果是 15,而不是我输入 20,但结果是 25。我做错了什么?
谢谢你!
I use Jquery tools rangeinput.
For example I have:
<input id="testId" title="test" class="range" type="range" name="test" min="0" max="3000" value="15" />
And script:
$(".range").rangeinput();
$("#testId").live('change', function() {
console.log($(this).data("rangeinput").getValue());
});
So by default my value is 15. Then I type in my input 25, but result in console is 15, than I type 20, but result is 25. What am I doing wrong?
Thank you!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
改为尝试这种方式。发生的情况是在调用 getValue 之前未设置更改的值。调用
0
的setTimeout
将解决这个问题。Try it this way instead. What's happening is the changed value isn't set before you call getValue. Calling
setTimeout
of0
will fix that.如果您可以摆脱
live
并直接使用change
它将起作用,因为插件使用更改事件本身。If you can get rid of
live
and directly usechange
it will work because plugin uses the change event itself.您必须使用 jQuery 工具脚本 data(toolname) API 用于访问值
You must use jQuery Tools scripting data(toolname) API for access to values