为复选框javascript指定两个值
Assigning two values to a checkbox javascript
我需要从一个复选框返回两个不同的值作为结果。我尝试了一个对象,但结果是未定义的(代码只使用一个值)。
' <input type="checkbox" id="cat" value="'+{value1: data.blue, value2: data.red} +'"/>'
result.value1总是未定义的,而result只适用于字符串。
使用javascript/jquery实现这一点的最佳方法是什么。
您可以使用attr
添加更多值,例如:
<input type="checkbox" id="cat" data-value1="blue" data-value2="red" value=""/>
使用jQuery获取值,使用:
$("#cat").data("value1");//return 'blue'
$("#cat").data("value2");//return 'red'
结果:https://jsfiddle.net/cmedina/a0ya5bwp/
为什么不创建一个带分隔符的字符串类似于value1''t value2
你只需要搜索这个分隔符并剪切字符串就可以得到你的2个差值?
您可以将对象字符串化,并将该值作为数据属性放在输入上,在输入更改处理程序中,将字符串解析为JSON。
HTML
<input type="checkbox" id="cat" name="cat">
<label for="cat">Cat</label>
Javascript
var input = document.getElementById('cat');
var testValue = {value1: 'blue', value2: 'red'};
input.setAttribute('data-value',JSON.stringify(testValue));
input.addEventListener('change', function(event) {
var inputValue = JSON.parse(event.target.getAttribute('data-value'));
console.log(inputValue);
});
演示:JSFiddle
看起来有拼写错误:vaule1应该是value1
相关文章:
- 我有两个复选框,只有一个可以点击
- jQueryui上的两个复选框选中需要按钮激活和未选中禁用
- 防止具有相同选项的两个复选框上的重复选项
- 如果选中两个复选框,则条件在 jQuery 中不起作用
- 在两个复选框之间切换
- 卡在检查两个复选框中的任何一个是否被选中
- 如何使用jQuery检查两个复选框何时都有非空值
- 在 jquery 中序列化两个复选框
- 如果选中了两个复选框,请不要这样做
- 显示两个复选框元素的标题之间的数学差异
- 将两个复选框绑定在一起
- 如何使用jQuery处理两个复选框
- MVC中有两个复选框,但每次只允许一个复选框
- 选中两个复选框时启用输入提交按钮
- 如果至少选中了两个复选框,如何启用提交按钮
- 测试是否至少选中了两个复选框,然后将值插入数据库
- 只有当另外两个复选框未选中时,才取消选中复选框
- 在React JS中,一次点击选中两个复选框
- 如果文本框为空并且复选框(un)被选中,则选中这两个复选框
- 在选中两个复选框时没有进入正确的循环