javascript - 如何根据滑块输入更改链接?
问题描述
我正在创建一个滑块,用户可以通过该滑块从 500 美元到 10000 美元之间选择某个对象的价格点。有4个不同的价格点。0~1000,1001~2000,2001~4000 和 4001~10000。通过单击“带我去我的理想对象!”,每个不同的价格点都应该转到不同的链接。我不确定该怎么做才能使链接实时更新。
<div id='slidecontainer'>
<form oninput="x.value=parseInt(tierslider.value)">
<span>500</span>
<input type='range' min='500' max='10000' value='500' id='tierslider'>
<span>10000</span>
<output id='tierslider2' name='x'></output>
</form>
</div>
<a href='#' id='DisplaySliderResult'>Take me to my ideal object!</a>
我希望输出链接会根据值不断更新,以便用户可以根据预算访问不同的网站。
解决方案
function onRangeChanged(value) {
let advertiseLink = document.getElementById('DisplaySliderResult');
let url = advertiseLink.href;
console.log(value);
value = parseInt(value);
switch(true) {
case value >= 0 && value <= 1000:
url = "link1";
break;
case value > 1000 && value <= 2000:
url= "link2";
break;
case value > 2000 && value <= 4000:
url= "link3";
break;
case value > 4000 && value <= 10000:
url= "link4";
break;
}
advertiseLink.setAttribute('href', url);
console.log(advertiseLink);
}
<form oninput="x.value=parseInt(tierslider.value)">
<span>500</span>
<input type='range' min='500' max='10000' value='500' id='tierslider' onchange="onRangeChanged(this.value)">
<span>10000</span>
<output id='tierslider2' name='x'></output>
</form>
<a href='#' id='DisplaySliderResult'>Take me to my ideal object!</a>
推荐阅读
- java - 如何在码头中禁用 slf4j
- rust - 如何使用迭代器逐个迭代集合中的两个元素?
- c# - 遍历不断增长的列表并记住位置
- c++ - 使用自定义 Yocto SDK 促进交叉编译失败并出现“没有这样的文件或目录”错误
- php - HTML/PHP - 我如何记住人们离开的页面?
- c - 初始化从指针目标类型中丢弃“const”限定符
- laravel - 为什么我在 laravel 应用程序中运行 redis 时出错?
- android - Jetpack Compose:对 Slider 更改的值做出反应
- mysql - 如何在没有按钮的网站上实时显示 mySQL 表?
- constants - 是否可以在 Progress-4GL 中创建常量?