如何将复选框值打印到输入字段?
它几乎带来了值但不在输入字段中,使用div或span可以工作,但我需要在输入字段中。
这是我的代码:http://jsfiddle.net/QYyD2/279/
$(function() {
$(":checkbox").change(function() {
var arr = $(":checkbox:checked").map(function() { return $(this).val(); }).get();
$("#myVal").text(arr.join('/'));
});
});

label { display: block; }
.rowSelected { background-color: #eee; }

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<input value="bangalore" type="checkbox" /><label>Bangalore</label>
<input value="chennai" type="checkbox" /><label>Chennai</label>
<input value="pondy" type="checkbox" /><label>Pondy</label>
<input type="text" id="myVal" value="">
&#13;
此致 RMK
答案 0 :(得分:0)
试试这个
$(function() {
$(":checkbox").change(function() {
var arr = $(":checkbox:checked").map(function(){
get_value = $(this).val();
$("#myVal").val(get_value);
});
});
});
答案 1 :(得分:0)
为每个复选框添加名称,例如name =“city”
脚本:
$(function(){ $(“:checkbox”)。change(function(){
var cities = $('input:checkbox[name=city]:checked').map(function () {
返回this.value; })。得到();
var arr = cities.join('\\');
// alert(arr);
$( “#设为myVal”)VAL(ARR)。
}); });
答案 2 :(得分:0)
您应该使用.text(text)
函数进行文本输入,而不是使用jQuery .val(value)
函数。
.text(text)
函数用于定义元素的文本内容;例如开始标记和结束标记之间的纯文本(元素的“内容”,但剥离了可能嵌套在其中的任何HTML)。由于input
标记是自动关闭的,因此它没有任何文本内容。
相比之下,.val(value)
函数用于设置元素的HTML“value”属性,而不是文本内容。这是指定将出现在文本输入中的文本的正确方法。
有关.val(value)
功能的完整说明,请参阅jQuery documentation。
描述:设置匹配元素集中每个元素的值。此方法通常用于设置表单字段的值。
以下是您的代码的工作版本,考虑到上述更改。
$(function() {
$(":checkbox").change(function() {
var arr = $(":checkbox:checked").map(function() { return $(this).val(); }).get();
$("#myVal").val(arr.join('/'));
});
});
label { display: block; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<input value="bangalore" type="checkbox" /><label>Bangalore</label>
<input value="chennai" type="checkbox" /><label>Chennai</label>
<input value="pondy" type="checkbox" /><label>Pondy</label>
<input type="text" id="myVal" value="">
答案 3 :(得分:0)
您可以在此处查看工作副本:http://jsfiddle.net/QYyD2/336/
将JS代码中的$("#myVal").text(arr.join('/'));
替换为$("#myVal").val(arr.join('/'));
。