首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >仅包含文本的JavaScript/JQuery单选按钮

仅包含文本的JavaScript/JQuery单选按钮
EN

Stack Overflow用户
提问于 2020-09-02 09:28:08
回答 1查看 69关注 0票数 2

我试图用CSS/HTML/JS创建一个RSVP表单,并用PHP填充它,我试图用文本来选择一个单选按钮。两个选项是接受X和拒绝[],同时单选框更改括号([])之间的X。由于I的原因,我在使用多个单选按钮时遇到了问题。有人有什么建议吗?

最终结果将是接受X和拒绝[],接受时接受[],并在每个单选接受拒绝时拒绝X。

代码语言:javascript
复制
document.body.addEventListener('change', function (e) {
  let target = e.target;
  switch (target.id) {
    case 'accept':
        break;
    case 'decline':
        break;
  }
});
代码语言:javascript
复制
label {
  display: inline-block;
  border: solid 2px red;
}

input[type="radio"] {
  display: none;
}

input[type="radio"]:checked + label {
  border: solid 2px green;
  content: attr(decline)"TEST";
}
代码语言:javascript
复制
Nick:
<input type="radio" id="accept1" name="nick" checked>
<label for="accept1">Accept [X]</label>


<input type="radio" id="decline1" name="nick">
<label for="decline1">Decline []</label>

<br>

Joe:
<input type="radio" id="accept2" name="joe" checked>
<label for="accept2">Accept [X]</label>


<input type="radio" id="decline2" name="joe">
<label for="decline2">Decline []</label>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-02 09:35:05

从标签中删除[X][] ...然后添加

代码语言:javascript
复制
input[type="radio"]:checked + label:after {
  content: " [X]";
}
input[type="radio"] + label:after {
  content: " []";
}

到CSS

..。此外,无论content: attr(decline)"TEST";是什么,它都不会做任何事情--删除它

结果:

代码语言:javascript
复制
document.body.addEventListener('change', function (e) {
            let target = e.target;
            switch (target.id) {
                case 'accept':
                    break;
                case 'decline':
                    break;
            }
        });
代码语言:javascript
复制
label {
  display: inline-block;
  border: solid 2px red;
}

input[type="radio"] {
  display: none;
}

input[type="radio"]:checked + label {
  border: solid 2px green;
}
input[type="radio"]:checked + label:after {
  content: " [X]";
}
input[type="radio"] + label:after {
  content: " [ ]";
}
代码语言:javascript
复制
Nick:
<input type="radio" id="accept1" name="nick" checked>
<label for="accept1">Accept</label>


<input type="radio" id="decline1" name="nick">
<label for="decline1">Decline</label>

<br>

Joe:
<input type="radio" id="accept2" name="joe" checked>
<label for="accept2">Accept</label>


<input type="radio" id="decline2" name="joe">
<label for="decline2">Decline</label>

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63697456

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档