在页面上,我有几个复选框,每个的ID都不同.复选框的数量不固定,可能是一个,4个,10个......我想获得所有的ID并通过$ .post发送它们.
我怎样才能做到这一点 ?
谢谢,
更新1:
var jqxhr = $.post("/Controller/MyAction", {
field1: $("#field1").val(),
benefic: $(":checkbox").serialize(),
fileld2: $("#fileld2").val()
},
function (data) {
})
.success(function () {
})
.error(function (jqXHR, status, error) {
})
.complete(function () {
});
Run Code Online (Sandbox Code Playgroud)
我在控制器中看不到"有益"的任何价值......而且它是我需要的所选复选框的"id"
做这个:
$.post('your_url', $(":checkbox").serialize() );
Run Code Online (Sandbox Code Playgroud)
例如name="myCheckbox[]",如果您的复选框具有相同的名称,则可以执行以下操作:
$.post('your_url', $(":checkbox[name='myCheckbox[]']").serialize() );
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.
编辑:您的更新1的解决方案:
$.post("/Controller/MyAction", {
field1: $("#field1").val(),
benefic: $(":checkbox:checked").attr("id"),
fileld2: $("#fileld2").val()
},
...
Run Code Online (Sandbox Code Playgroud)
这将做你要求的..但是,你确定它总是只有1个复选框.选择?如果您需要超过1个(我几乎可以肯定您这样做),您需要以哪种格式发送它们?用逗号分隔的ID?
要发送所有以逗号分隔的已检查ID,您可以执行以下操作:
$.post("/Controller/MyAction", {
field1: $("#field1").val(),
benefic: $(':checkbox:checked').map(function() { return this.id; }).get().join(','),
fileld2: $("#fileld2").val()
},
...
Run Code Online (Sandbox Code Playgroud)
干杯
| 归档时间: |
|
| 查看次数: |
139 次 |
| 最近记录: |