如何使用jquery遍历gridview并检查是否选中了任何复选框

时间:2017-02-02 07:17:18

标签: javascript jquery gridview

我正在开发基于jquery的应用程序。我有一个asp.net gridview,每行都有复选框。我想检查是否选中了任何复选框。我正在遍历gridview行并检查是否选中任何复选框,如下所示。

var ResultArrayFirst = [];
        $('#<%= gdvRegretletter.ClientID %> input[type="hidden"]').each(function () {
            if ($(this).closest('tr').find('input[type="checkbox"]').prop('checked', true))
            {
                ResultArrayFirst.push($(this).val());
            }

        });
        alert(ResultArrayFirst);

我的上述代码不起作用。一旦执行上述代码,所有复选框都将检查。我不确定我在这里失踪了什么。任何帮助,将不胜感激。谢谢。

3 个答案:

答案 0 :(得分:2)

要检查复选框是否已选中,请使用此选项:

if (checkbox.is(':checked')) {
   // Do your stuff
}

所以,改变你的代码:

if ($(this).closest('tr').find('input[type="checkbox"]').is(':checked'))
{
   ResultArrayFirst.push($(this).val());
}

答案 1 :(得分:2)

您可以使用jquery的 upstream app_server { server unix:/home/django/gunicorn.socket fail_timeout=0; } server { listen 80 default_server; listen [::]:80 default_server; server_name _; return 301 https://$host$request_uri; #listen 80; #server_name solomon; #return 301 https://closer.com$request_uri; #server_name solomon; #listen 80; #return 301 https://closer.com; } server { #listen 80 default_server; #listen [::]:80 default_server ipv6only=on; listen 443; ssl on; ssl_certificate /etc/ssl/simple_academy_cert_chain.crt; ssl_certificate_key /etc/ssl/server.key; root /usr/share/nginx/html; index index.html index.htm; client_max_body_size 4G; server_name _; keepalive_timeout 5; # Your Django project's media files - amend as required location /media { alias /home/django/django_project/django_project/media; } # your Django project's static files - amend as required location /static { alias /home/django/django_project/static; } # Proxy the static assests for the Django Admin panel location /static/admin { alias /usr/lib/python2.7/dist-packages/django/contrib/admin/static/admin/; } location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header Host $host; proxy_redirect off; proxy_buffering off; proxy_pass http://app_server; } } 选择器

:checked

答案 2 :(得分:1)

只需将一个类作为示例chk给出复选框,然后使用.map()代替每个循环,它将获得数组中的项目,请在下面找到单行代码来实现

var selected =  $(".chk:checked").map(function(i,el){return el.value;}).get();

如果您只是想检查是否选中了复选框,则可以执行以下操作,它将返回bool

$(".chk").is(":checked")