我有一组复选框,在选择后,它们的值会被添加到字符串中。但是,我还需要在选择“input_36_10”后启用文本框。在文本框中输入的值需要添加到字符串中。我无法捕获输入文本框的值。参考我的代码:http://jsfiddle.net/WgaXj/1/
function updateTextArea() {
var x2 = $('.form-checkbox[id^="input_36_"]:checked').map(function () {
return this.value;
}).get().join();
$('#t1').val(x2);
}
$(function () {
$("#input_36_10").change(function () {
if ($(this).attr("checked")) {
$("#td1").removeAttr("disabled");
var x3 = $("td1").val();
x2 = x2 + x3;
} else {
$("#td1").attr("disabled", true);
}
});
$('#butto').click(updateTextArea);
});
答案 0 :(得分:0)
您应该在function
if($(this).attr('id')=='input_36_10')
return $('#td1').val();
完整代码
var x2 ='';
var x1='';
function updateTextArea() {
x2= $('.form-checkbox[id^="input_36_"]:checked').map(function () {
// add the two lines to work it properly
if($(this).attr('id')=='input_36_10')//Remember the id of other
return $('#td1').val();//return the textbox value near by other checkbox
return this.value;
}).get().join();
$('#t1').val(x2);
x1 = $('.form-checkbox[id^="input_37_"]:checked').map(function () {
return this.value;
}).get().join();
$('#t2').val(x1);
}
$(function () {
$("#input_36_10").change(function () {
if ($(this).is(":checked")) {
$("#td1").removeAttr("disabled");
} else {
$("#td1").prop("disabled", true);
}
});
$('#butto').click(updateTextArea);
});
答案 1 :(得分:0)
您可以使用is(':checked')
$(function () {
$("#input_36_10").change(function () {
if ($(this).is(':checked')) {
$("#td1").removeAttr("disabled");
var x3 = $("#td1").val();
x2 = x2 + x3;
} else {
$("#td1").attr("disabled", true);
}
});