首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >MVC 3复选框始终返回true,即使未选中也是如此

MVC 3复选框始终返回true,即使未选中也是如此
EN

Stack Overflow用户
提问于 2011-10-06 20:12:22
回答 3查看 16.4K关注 0票数 25

我有以下代码

代码语言:javascript
复制
@foreach (var item in Model.Defaults)
    {
        <tr class="CertainCategory">
            <td>
                @item.Item1
            </td>
            <td>
                @Html.CheckBoxFor(c => c.Use)
                @Html.Hidden("guid", guid.guid.ToString())
            </td>
        </tr>
    }

我正在尝试使用AJAX将表单值提交给控制器方法。我的问题是checkbox的值总是作为true发送。

代码语言:javascript
复制
$('.CropUsageItem').each(function () {

            var guid = $(this).find("#guid").val();
            var chk = $(this).find("#use").val();
            var data = {
                guid: guid,
                chk: chk
            };

            $.ajax({
                async: false,
                type: "POST",
                url: "DefaultValues/SaveDefault",
                data: data
            });
        });

我在StackOverflow上搜索过类似的结果,但没有一个完全适用于我的场景。如何发送正确的值?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-10-06 20:16:55

如果复选框处于选中状态,则可以使用以下验证。

代码语言:javascript
复制
var chk = $('#use').attr('checked');

代码语言:javascript
复制
var chk = $('#use').is(':checked'); 
票数 53
EN

Stack Overflow用户

发布于 2011-10-06 22:38:28

.val()返回value属性的内容。因为它可能是等于真的非空。

还要检查一下你的弹壳。css &因此jQuery也是区分大小写的。

票数 7
EN

Stack Overflow用户

发布于 2015-05-02 05:31:04

代码语言:javascript
复制
var chk = $('#use').checked;

对我很管用

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7674075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档