javascript - 使用jQuery单击单选按钮时如何将值推送到隐藏的输入类型?
问题描述
我从一个数组格式的变量中获取值,因此通过使用 for 循环,它将迭代,当单击输入类型单选按钮时,每个值都以逗号分隔推送到隐藏字段
我试过了,但没有插入任何东西。如何将这些值推送到隐藏字段?
var id = ["1", "2"]; // getting this value from another varaible in array format
for (var i = 0; i < id.length; i++) {
$("input[name=radion_btn" + id[i] + "]").change(function() {
$(".selected_val").push(id[i]); //values like 1,2 want to push in hidden field when click on radio button
});
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="hidden" name="selected_val[]" value="" class="selected_val" />
<input type="radio" name="radion_btn1" value="" />
<input type="radio" name="radion_btn2" value="" />
解决方案
根据您的代码。for(var i = 0; i < id.length; i++) {
运行两次,每当您的事件发生时。那时我的值是 2,而 id[2] 是未定义的。下面的代码应该可以工作。
var id = ["1", "2"]; // getting this value from another varaible in array format
arrayData = [];
for (var i = 0; i < id.length; i++) {
$("input[name=radion_btn" + id[i] + "]").change(function() {
console.log($(this).val());
arrayData.push($(this).val()); //values like 1,2 want to push in hidden field when click on radio button
$('.selected_val').val(arrayData.join());
});
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="value" name="selected_val[]" value="" class="selected_val" />
<input type="radio" name="radion_btn1" value="1" />
<input type="radio" name="radion_btn2" value="2" />
推荐阅读
- android - 在 Android 中为 PDF、文本和图像创建文件资源管理器
- lambda - Kotlin 创建一个类的实例并在一行代码中实现回调
- python - 在 python 中支持 POSIX openat 函数
- ios - 使用 UIView.animateKeyframes 为 CAShapeLayer 属性设置动画
- python - Clang + pycparser 无法从 CPython 3.7 解析 pythread.h 标头
- javascript - 通过数组值实时搜索
- swift - 如何快速修复自动变焦相机
- python - 使用 Ctypes 调用复杂的 c++ 代码
- c++ - 在 Eigen 中构造稀疏三对角矩阵
- callback - Sequelize - 在最后一次回调执行完成后从第二级链返回对象