带有单选按钮和复选框的 jQuery 切换数组列表
jquery switching array list with radio buttons and checkboxes
有什么办法可以做到这一点吗?
我有 2 个单选按钮和 7 个复选框。
<body>
<input type="radio" id="upper">Uppercase
<input type="radio" id="lower">Lowercase<br />
<input type="checkbox" name="days" id="1" data-val=""> Monday
<input type="checkbox" name="days" id="2" data-val=""> Tuesday
<input type="checkbox" name="days" id="3" data-val=""> Wednesday
<input type="checkbox" name="days" id="4" data-val=""> Thursday
<input type="checkbox" name="days" id="5" data-val=""> Friday
<input type="checkbox" name="days" id="6" data-val=""> Saturday
<input type="checkbox" name="days" id="0" data-val=""> Sunday
</body>
当我选择"大写"单选按钮时,我想使用"var DAYS",并将值设置为"data-val"。
例如
<input type="checkbox" name="days" id="1" data-val="MON">Monday
<input type="checkbox" name="days" id="2" data-val="TUE">Tuesday
.
.
.
<input type="checkbox" name="days" id="0" data-val="SUN">Sunday
当我选择"小写"时,我想使用"var days",并将值设置为"data-val"。
<input type="checkbox" name="days" id="1" data-val="mon">Monday
<input type="checkbox" name="days" id="2" data-val="tue">Tuesday
.
.
.
<input type="checkbox" name="days" id="0" data-val="sun">Sunday
我试图通过以下方式实现这一目标,但它并没有哇。
<script>
var DAYS = ['MON', 'TUE', 'WED', 'THU','FRI', 'SAT', 'SUN'];
var days = ['mon', 'tue', 'wed', 'thu','fri', 'sat', 'sun'];
if ($('#upper').prop('checked')) {
$.each(DAYS, function (i, value) {
var ID = parseInt($("input[ type='checkbox' ]").attr('id'));
if (ID === i) {
$("[ type='checkbox' ]").attr( 'data-val', value);
}
});
else if ($('#lower').prop('checked')) {
$.each(days, function (i, value) {
var ID = parseInt($("input[ type='checkbox' ]").attr('id'));
if (ID === i) {
$("input[ type='checkbox' ]").attr( 'data-val', value);
}
});
}
</script>
谁能帮我完成以下步骤?
拜托,不要对我糟糕的英语感到愤怒。谢谢你的时间。
如果你把你的数组放在一个对象里,你可以使用括号符号来访问它们,这将有助于耗尽你的代码。
首先,在radio
中添加一个公共类和值属性:
<input type="radio" id="upper" value="upper" class="case-toggle">Uppercase
<input type="radio" id="lower" value="lower" class="case-toggle">Lowercase<br />
然后在 JS 中:
var days = {
upper: ['MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT', 'SUN'],
lower: ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun']
}
$('.case-toggle').change(function() {
$.each(days[$(this).val()], function(i, item) {
$('input[name="days"]').eq(i).data('val', item);
});
});
相关文章:
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 使用图像数组列表的simplegallary.js显示适合桌面屏幕的图像
- 从javascript中的数组列表中获取值
- 将C#数组列表传递给Javascript
- 如何在 Javascript 中将字符串数组列表插入到表行中
- 如何迭代json对象的嵌套属性并创建新的数组列表
- 从数组列表中返回唯一的数组
- 如何使用jQuery将类名添加到对象属性的数组列表中
- 我可以在HTML中制作一个可调整的数组列表吗
- 对象的数组列表的Javascript排序列表-基于特定的数组列表
- 如何使用ajax调用获取数组列表数据(将数组列表数据控制器传递给ajax方法)
- 如何在jquery中将数组列表分解为两个变量
- 从数组列表中随机选择一个段落 Javascript
- 如何使用angularjs数组列表传递到服务器
- 带有最小和最大数字的增量数组列表
- 从可观察数组列表中删除元素
- 如何在 javascript 中的数组列表中获取数组中的值
- 在 Javascript 中搜索数组列表的项
- tp 如何解析在 webmethod中用数组列表返回的 Json 结果
- 带有单选按钮和复选框的 jQuery 切换数组列表