我需要从每个选中的复选框中获取ID。现在我能得到很好的总和,但我似乎无法得到每个id。
<input name="pay" class="pay_me" id="4" type="checkbox" value="6.00" />
<input name="pay" class="pay_me" id="5" type="checkbox" value="9.00" />
<input name="pay" class="pay_me" id="6" type="checkbox" value="3.00" />
<input name="pay" class="pay_me" id="9" type="checkbox" value="23.00" />
Jquery的
$(document).ready(function() {
$('.pay_me').change(
function() {
var t_payme = 0;
$('.pay_me:checked').each(function() {
t_payme += parseFloat($(this).val());
});
t_payme = parseFloat(t_payme).toFixed(2);
$('#to_payme').val(t_payme);
});
});
有了这个,我就可以把它归到我的文本框了
<input name="to_payme" id="to_payme" type="text" value="0.00" />
我还需要在另外的文本框中使用这个4 | 6 | 9的已检查身份证号码
<input name="ids_to_update" id="ids_to_update" type="text" value="" />
答案 0 :(得分:4)
您可以使用this.id
(或$(this).prop("id")
)获取元素ID。使用数组存储ID,如:
$(document).ready(function() {
$('.pay_me').change(function() {
var t_payme = 0, checked = [];
$('.pay_me:checked').each(function() {
t_payme += parseFloat($(this).val());
checked.push(this.id);
});
t_payme = t_payme.toFixed(2);
$('#to_payme').val(t_payme);
$('#ids_to_update').val(checked.join("|"));
});
});
答案 1 :(得分:2)
你走了:
$(document).ready(function() {
$('.pay_me').change(function() {
var t_payme = 0, ids = [];
$('.pay_me:checked').each(function() {
ids.push(this.id);
t_payme += parseFloat($(this).val());
});
t_payme = parseFloat(t_payme).toFixed(2);
$('#to_payme').val(t_payme);
$('#ids_to_update').val(ids.join('|'));
});
});
答案 2 :(得分:0)
跟踪数组中的ID:
var ids = [];
$('.pay_me:checked').each(function () {
t_payme += parseFloat($(this).val());
ids.push($(this).attr("id"));
});
//now do something with the array of IDs...