gpt4 book ai didi

javascript - 从 html 输入中获取值

转载 作者:行者123 更新时间:2023-12-03 08:09:18 24 4
gpt4 key购买 nike

我有一个输入元素,它是一个范围 slider ,我想将其转换为具有下限和上限的 slider 。尽管正在讨论,但此功能尚未在范围内实现。 As you can see this is a popular question .

我的问题是,我检索 slider 结果的方式似乎不再有效,我不明白为什么。我原来的 slider 是这样工作的:

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<form>
<label for="slider">
<input id="slider" type="range" value="0" oninput="sliderAmount.value = slider.value" min="0" max="100" step="1" />
stuff: <output name="sliderAmount" for="slider">0</output>
</label>
</form>
<div id="stuff"></div>
<script>
amt = document.getElementById("slider");
var amtChange = function () {
document.getElementById('stuff').innerHTML+='<div>'+amt.value+'</div>';
};
amt.onchange = amtChange;
</script>
</body>
</html>

每次滑动栏时,它都会使用新结果更新 stuff div。我希望能够使用 jquery slider 做同样的事情,但是用范围更新 stuff div。

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Slider - Range slider</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script>
$(function () {
$("#slider-range").slider({
range: true,
min: 0,
max: 500,
values: [75, 300],
slide: function (event, ui) {
$("#amount").val(ui.values[0] + " - " + ui.values[1]);
}
});
$("#amount").val($("#slider-range").slider("values", 0) +
" - " + $("#slider-range").slider("values", 1));
});
</script>
</head>
<body>
<form>
<label for="amount">Price range:</label>
<input id="amount" type="text" readonly style="border:0; color:#f6931f; font-weight:bold;">
<div id="slider-range"></div>
</form>
<div id="stuff"></div>
<script>
amt = document.getElementById("amount");
var amtChange = function () {
document.getElementById('stuff').innerHTML += '<div>' + amt.value + '</div>';
};
amt.onchange = amtChange;
</script>
</body>
</html>

但是,这似乎无法从 slider 输入中拉出范围。如果我进入 Chrome 的控制台查看 jquery 示例,我可以输入 amt.value,它每次都会返回该值。我在这里缺少什么?

最佳答案

只需在更改输入值时触发 inputchange() 方法即可。

试试这个:

演示:FIDDLE

 $(function () {
$("#slider-range").slider({
range: true,
min: 0,
max: 500,
values: [75, 300],
slide: function (event, ui) {
$("#amount").val(ui.values[0] + " - " + ui.values[1]).change();
}
});
$("#amount").val($("#slider-range").slider("values", 0) +
" - " + $("#slider-range").slider("values", 1)).change();
});

关于javascript - 从 html 输入中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34216217/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com