javascript - 仅 CSS 的选项卡试行嵌套输入标签的内容
问题描述
一系列纯 CSS 选项卡
<ul class='tabs'>
<li>
<input type="radio" name="tabs" id="tab_23101" value="23101" checked />
<label for='tab_23101'> </label>
<div id='tab-content_23101' class='tab-content'>
<label><input type="radio" class='imagepick' id="Frame_CD" name="Frame" value="23101_CD"></label>
</div>
</li>
<li>
<input type="radio" name="tabs" id="tab_23102" value="23102" />
<label for='tab_23102'> </label>
<div id='tab-content_23102' class='tab-content'>
<label><input type="radio" class='imagepick' id="Frame_CD" name="Frame" value="23102_CD"></label>
</div>
</li>
每个都有特定的内容,这些内容继续指定带有名称和值的进一步输入,这些名称和值被 javascript 用作呈现图像的选择器。问题在于,一个行项目中的选定值<li>
对23101_CD
第二个行项目(预期)无效,23102_CD
因此如果选择了第二个行项目,则会呈现空白。
javascript的结构如下
$("input[type=radio]").on("change", function() {
var Frame_image = $("input[name=tabs]:checked").val() + "_" + $("input[name=Frame]:checked").val();
$("#Frame").attr("src", "/small/Frame_" + Frame_image + ".png");
How can one add pairs (multiple) of name and value to the parent input tag as part of the HTML (the desire is to avoid having to alter existing javascript) to act as selected items checked="checked"
?
解决方案
目前尚不清楚为什么需要输入标签才能生孩子。您可以使用邻接选择器 ( +
) 来匹配单选按钮旁边的选项卡。这是一个极简的纯 CSS 选项卡演示:
.tabs {
display: flex;
flex-wrap: wrap;
background: #f0f0f0;
border: 1px solid #ddd;
}
.tabs > input {
display: none;
}
.tabs > label {
padding: 0.2em 0.5em;
background: #f0f0f0;
}
.tabs > div {
padding: 0.5em;
width: 100%;
order: 100;
background: white;
}
.tabs > input:checked + label {
background: white;
}
.tabs > input:not(:checked) + label + div {
display: none;
}
<div class="tabs">
<input type="radio" name="t1" id="t1_1" checked/>
<label for="t1_1">Tab 1</label>
<div>
Tab 1!
</div>
<input type="radio" name="t1" id="t1_2"/>
<label for="t1_2">Tab 2</label>
<div>
Tab 2!
</div>
<input type="radio" name="t1" id="t1_3"/>
<label for="t1_3">Tab 3</label>
<div>
Tab 3!
</div>
</div>
推荐阅读
- laravel - ElasticSearch 搜索和排序 has_child 关系
- python - Turtle Graphics 显示像素化图形
- pandas - 按组和移动窗口的累积回报(动量策略)
- c# - 不支持的私钥格式亚马逊支付
- python - 如何使用 Pyspark/Python 从 Microsoft Graph API 有效地获取组织层次结构?
- c# - 在 C# 机器人中使用 Composer 对话框
- reactjs - 将 create-react-app 部署到 gh-pages 时出现白屏问题
- excel - Excel FIND 和 REPLACE 函数用于唯一编号
- laravel - Laravel 和 Vue 组合视图
- wpf - 如何通知源属性有关 Wpf DataGrid 中所做的更改?