javascript - 根据复选框更改选择选项的值

标签 javascript html

如果用户选中复选框,是否可以更改选择选项的值。如果用户从选择选项中选择“四”,其默认值为“4”。现在如果用户选中复选框,选择选项值变为“44”。

<select name="sel" id="MySelect">
<option value="">Select One</option>
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
<option value="4">Four</option>
<option value="5">Five</option>
<option value="6">Six</option>
</select>

<input type="checkbox" name="btn_radio" />Discount

最佳答案

只需修改<option>当复选框更改时:

(function() {

  var discount = document.getElementById("discount");
  var option = document.querySelector("#amount option[value='4']");

  discount.addEventListener("change", function(e) {
    if (this.checked) {
      option.value = 44;
      option.textContent = "Fourty-Four";
    } else {
      option.value = 4;
      option.textContent = "Four";
    }
    console.log("value: %s, text: %s", option.value, option.textContent);
  });

})();
<select id="amount">
  <option value="">Select One</option>
  <option value="1">One</option>
  <option value="2">Two</option>
  <option value="3">Three</option>
  <option value="4">Four</option>
  <option value="5">Five</option>
  <option value="6">Six</option>
</select>

<label><input type="checkbox" id="discount" />Discount</label>

另请参阅:document.<a href="https://developer.mozilla.org/en-US/docs/Web/API/document.getelementbyid" rel="noreferrer noopener nofollow">getElementById()</a> , document.<a href="https://developer.mozilla.org/en-US/docs/Web/API/document.querySelector" rel="noreferrer noopener nofollow">querySelector()</a> , 和 EventTarget.<a href="https://developer.mozilla.org/en-US/docs/Web/API/EventTarget.addEventListener" rel="noreferrer noopener nofollow">addEventListener()</a>

关于javascript - 根据复选框更改选择选项的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28631047/

相关文章:

javascript - jquery 检测何时到达文本区域中文本的末尾

javascript - 在 jsp 页面中管理 &lt;iframe&gt;

javascript - 谷歌地图未加载

javascript - 查询不起作用express.js

javascript - 如何在给定条件下禁用 href?

javascript - 当我将多个 Controller 添加到同一模块时,Angular - Mocha - 测试失败

html - 当我将鼠标悬停在导航栏上时,列表项会向前移动

html - 文本不会在 div 或段落内换行/换行

javascript - document.getElementById 方法在哪里定义?

javascript - 有什么方法可以调试 meteor Jasmine 客户端单元测试吗?