javascript 根据保修选择设置未来维修日期

ebdffaop  于 2023-01-04  发布在  Java
关注(0)|答案(1)|浏览(107)

首先,我对Web开发真的是新手,上周才学习了JS的基础知识。
我有一个项目,我有一个VIP身份,和3种保修类型。如果客户是VIP-〉修复问题将需要长达7天。然后我有3种类型的保修-无,定期,延长。无-长达一个月的维修。定期-长达3周的维修。延长-长达2周的维修。
该解决方案必须只包括javascript(没有jQuery尚未)。由于VIP复选框不是保修选择的一部分,我有麻烦连接他们。
如果我的解释让你感到困惑-如果客户是VIP-保修选项应该被禁用。因为它会自动获得更快的服务。如果VIP复选框没有选中-我需要显示如上所示的维修时间。
先谢了

<input type="checkbox" id="isVIP" />VIP?
<select name="warranty" id="warranty">
          <option disabled selected>Select warranty</option>
          <option value="none">None</option>
          <option value="regular">Regular</option>
          <option value="Extended">Extended</option>
yi0zb3m4

yi0zb3m41#

为了达到你的要求,你需要加入一些逻辑。因为我们没有完整的背景,所以很难给予你一个答案。
如果我理解正确的话,你希望能够选择保修,如果不是VIP。
为了给予您一个概念,您可以使用javaScript来完成此操作:

const checkbox = document.getElementById('isVIP');
const select = document.getElementById('warranty');

checkbox.addEventListener('change', () => {
  if (checkbox.checked) {
    // Disable options in select element
    for (let i = 0; i < select.options.length; i++) {
      select.options[i].disabled = true;
    }
  } else {
    // Enable options in select element
    for (let i = 0; i < select.options.length; i++) {
      select.options[i].disabled = false;
    }
  }
});
<input type="checkbox" id="isVIP" />VIP?
<select name="warranty" id="warranty">
          <option disabled selected>Select warranty</option>
          <option value="none">None</option>
          <option value="regular">Regular</option>
          <option value="Extended">Extended</option>
</select>

希望能有所帮助

相关问题