我在c#
中的转发器中有一个复选框模板字段使用asp.net c#
绑定转发器<asp:Repeater ID="rpt_detail" runat="server">
<ItemTemplate>
<table>
<tr>
<td style="width: 10%; padding-top: 10px;">
<input type="checkbox" id="selectit" name="selectit" value='<%# Eval("mdID") %>' />
</td>
<td>
<asp:Label ID="mdID" runat="server" Visible="false" Text='<%# Eval("mdID") %>'></asp:Label>
</td>
<td>
<asp:Label ID="lbl_xprice" runat="server" Text='<%# Eval("mdPrice") %>'></asp:Label>
</td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>
和javascipt
<script>
function aaaaa() {
var selectit = $('input[name="selectit"]').val();
$.ajax({
url: "ajaxservice/getinchar.aspx",
type: 'POST',
data: { selectw: selectit },
success: function (result) {
$("#testview").html(result);
}
});
}
</script>
如何获取复选框选中的值?
答案 0 :(得分:0)
您可以使用jQuery循环转发器中的所有复选框。
<script type="text/javascript">
function getCheckBoxValues() {
$('#myRepeater input[type="checkbox"]').each(function () {
if ($(this).prop('checked') == true) {
alert($(this).val());
}
});
}
</script>
但为了实现这一点,您必须使用具有唯一ID的<div>
包装Repeater。
<div id="myRepeater">
<asp:Repeater ID="rpt_detail" runat="server"></asp:Repeater>
</div>
与解决方案并不真正相关,但您在Repeater内的复选框中获得了重复的ID(selectit
)。更好地使用asp.net CheckBox控件。
您可以更好地在转发器外设置<table>
</table>
。
<table id="myRepeater">
<asp:Repeater ID="rpt_detail" runat="server">
<ItemTemplate>
<tr>
<td> content... </td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>