如果 HTML 选择器具有特定值,如何 运行 Java 脚本函数?
How to run a Java Script function if an HTML selector has a specific value?
所以我有一个非常基本的 HTML 表单,我正在尝试弄清楚如果用户在HTML 元素。我对编码非常非常陌生,所以如果它看起来很糟糕请原谅我;但是像这样,假设我希望在选择值为“two”的选项时背景变成红色:
HTML:
<select id="numberDropdown">
<option disabled selected>0</option>
<option value="one">1</option>
<option value="two">2</option>
<option value="three">3</option>
</select>
JavaScript:
document.getElementById("numberDropdown").value = document.getElementById("numberDropdown").selectedIndex.value;
if (document.getElementById("numberDropdown").value = "two"){
document.body.style.backgroundColor = "red";
};
我真的不知道任何 java 脚本,只是尝试输入一些内容以便您理解问题。感谢您的帮助!
您可以使用按钮来处理事件并获取选择器选择的索引的值。
const btn = document.querySelector('#btn');
const selector = document.querySelector('#numberDropdown');
btn.onclick = (event) => {
event.preventDefault();
console.log(selector.selectedIndex)
if (selector.selectedIndex == 2){
document.body.style.backgroundColor = "red";
}
};
<select id="numberDropdown">
<option disabled selected>0</option>
<option value="one">1</option>
<option value="two">2</option>
<option value="three">3</option>
</select>
<button id="btn">Get number</button>
您可以将 javascript 代码包装在一个函数中,并在 select 标记上使用 onchange 属性。因此,只要 select 标签的值发生变化,您的功能就会执行。
function changeColour() {
let selectElement = document.getElementById("numberDropdown")
let selectedValue = selectElement.options[selectElement.selectedIndex].value;
if (selectedValue === "two"){
document.body.style.backgroundColor = "red"
}
}
您可以将 html 更改为
<select id="numberDropdown" onchange="changeColour()">
<option disabled selected>0</option>
<option value="one">1</option>
<option value="two">2</option>
<option value="three">3</option>
</select>
有很多方法可以做到,据我所知这是最简单的方法。
每次选择新值时都应该更新
const selectElement = document.getElementById("numberDropdown");
selectElement.addEventListener('change', (event) => {
let val = selectElement.options[selectElement.selectedIndex].value;
if (val == "two"){
document.body.style.backgroundColor = "red";
}
});
所以我有一个非常基本的 HTML 表单,我正在尝试弄清楚如果用户在HTML 元素。我对编码非常非常陌生,所以如果它看起来很糟糕请原谅我;但是像这样,假设我希望在选择值为“two”的选项时背景变成红色:
HTML:
<select id="numberDropdown">
<option disabled selected>0</option>
<option value="one">1</option>
<option value="two">2</option>
<option value="three">3</option>
</select>
JavaScript:
document.getElementById("numberDropdown").value = document.getElementById("numberDropdown").selectedIndex.value;
if (document.getElementById("numberDropdown").value = "two"){
document.body.style.backgroundColor = "red";
};
我真的不知道任何 java 脚本,只是尝试输入一些内容以便您理解问题。感谢您的帮助!
您可以使用按钮来处理事件并获取选择器选择的索引的值。
const btn = document.querySelector('#btn');
const selector = document.querySelector('#numberDropdown');
btn.onclick = (event) => {
event.preventDefault();
console.log(selector.selectedIndex)
if (selector.selectedIndex == 2){
document.body.style.backgroundColor = "red";
}
};
<select id="numberDropdown">
<option disabled selected>0</option>
<option value="one">1</option>
<option value="two">2</option>
<option value="three">3</option>
</select>
<button id="btn">Get number</button>
您可以将 javascript 代码包装在一个函数中,并在 select 标记上使用 onchange 属性。因此,只要 select 标签的值发生变化,您的功能就会执行。
function changeColour() {
let selectElement = document.getElementById("numberDropdown")
let selectedValue = selectElement.options[selectElement.selectedIndex].value;
if (selectedValue === "two"){
document.body.style.backgroundColor = "red"
}
}
您可以将 html 更改为
<select id="numberDropdown" onchange="changeColour()">
<option disabled selected>0</option>
<option value="one">1</option>
<option value="two">2</option>
<option value="three">3</option>
</select>
有很多方法可以做到,据我所知这是最简单的方法。
每次选择新值时都应该更新
const selectElement = document.getElementById("numberDropdown");
selectElement.addEventListener('change', (event) => {
let val = selectElement.options[selectElement.selectedIndex].value;
if (val == "two"){
document.body.style.backgroundColor = "red";
}
});