【问题标题】:Get checkbox values in jQuery?在jQuery中获取复选框值?
【发布时间】:2012-02-07 05:27:35
【问题描述】:

当用户单击复选框时,我正在处理复选框,我正在检查是否已选中,如果选中,我会更新数据库上的值,这是我的代码

$(document).ready(function(){
    $('input[type="checkbox"]').bind('click',function() 
    {
         var tObj = $(this).val();
         if ($('#checkpermission').is(':checked'))
         {
            alert(tObj);
            $.ajax({
                  url: 'checkpermission.php',
                  data: {"Selected":tObj},
                  type: 'post',
                  success:function(data)
                  {
                     alert(data);
                     //Succes!
                  }
            });
         }
         else
         {
             // alert(tObj);
             $.ajax({
                   url: 'uncheckpermission.php',
                   data: {"Selected":tObj},
                   type: 'post',
                   success:function(data)
                   {
                      alert(data);
                      //Succes!
                   }
             });
         }
    });

});


   <?php
session_start();
require 'dbconnect.php';
$page_name="RegisterUsers.php";
$start=$_GET['start'];
if(strlen($start) > 0 and !is_numeric($start))
{
echo "Data Error";
exit;
}
$eu = ($start - 0);
$limit = 8;
$this1 = $eu + $limit;
$back = $eu - $limit;
$next = $eu + $limit;



$query="select * from tbl_user where username!='admin' and password!='admin'";
$result=mysql_query($query);
$nume=mysql_num_rows($result);
if($nume>0)
{


if($_REQUEST['SearchText'])
{

$find=$_REQUEST['SearchText'];
$query="select * from tbl_user where username!='admin' and password!='admin' and username LIKE'%$find%' or Email LIKE'%$find%' or PhoneNumber LIKE'%$find%' order by id limit  $eu, $limit";
}
else
{
$query="select * from tbl_user where username!='admin' and password!='admin' order by username limit  $eu, $limit";
}
$result=mysql_query($query);
while($data=mysql_fetch_row($result))
{
 if($data[5])
 {
 $path=$redirect."/services/User/".$data[5];
 }
 else
 {
 $path=$redirect."/images/noimage.png";
 }
?>
 <tr>
<td class="gallery">

<a href='<?=$path ?>'>
 <img width="50" height="50" src=<?php echo $path; ?> />
 </a>

</td>
<!--<td id='myText'><img width=50 height=50 src=<?php echo $path; ?> /></a></td>-->
 <td><?=$data[1]?></td> 
 <td><?=$data[3]?></td>
 <td><?=$data[4]?></td>
 <td>
 <div style="padding-left:25px;">
 <INPUT TYPE="checkbox" class="checkpermission" name="checkuser" id="checkpermission" value='<?=$data[0]?>'<?php if($data[6]=="Read-Write"){echo "checked";}?>>
 </div>
 <div>
 Read-Write
 </div>
 </td>

<td class='delete'><a  href='http://ifliptips.com/admin/VueGuides/AddUser.php?id=<?=$data[0]?>&action=edit' >Edit</a></td>
 <td class='delete'><a href='http://ifliptips.com/admin/VueGuides/RegisterUsers.php?id=<?=$data[0]?>&action=delete' onClick="return deletepressed();">Delete</a></td>
 </tr>
<?php
}
}
?>

每次当用户点击如果条件只有 else 循环不起作用时,我都会看到响应

所以任何人都可以指导我如何克服这个 感谢您的提前。

【问题讨论】:

  • 您在使用此代码时遇到了什么错误。
  • 每次 $('#checkpermission').bind('click', function() { alert($("#checkpermission").is(':checked'));//true每次 });

标签: php jquery checkbox


【解决方案1】:

尝试使用

if($("#checkpermission:checked").length > 0)

解决方案

带有checkpermission 的复选框不止一个。所以代码需要这样修改

$('input[type="checkbox"]').bind('click',function() 
{
     var tObj = $(this).val();
     if ($(this).is(':checked'))
     {
         //Rest of the code

Ajay 将更改代码以生成复选框的唯一 ID。上面的代码也适用于这种情况。

查看this jsFiddle

希望这对你有用。

【讨论】:

  • 你在onchange里面做什么?你可以使用 jQuery 绑定change 事件吗?检查这个jsfiddle.net/G9sLY/5
  • 每次 $('#checkpermission').bind('click', function() { alert($("#checkpermission").is(':checked'));//true每次 });
  • 你在哪里测试的?在您的项目或 jsFiddle 上。还请告诉我您使用的是哪个浏览器?它发生在浏览器上吗?
  • 我正在测试我正在使用 chrome 的项目
  • 我不是 PHP 开发人员,但您可以删除 value='&lt;?=$data[0]?&gt;'&lt;?php if($data[6]=="Read-Write"){echo "checked";}?&gt; 这个并尝试一下吗?这段代码在做什么?它可能总是设置checked
【解决方案2】:

$('input:checkbox:checked').val() 应该可以工作:)

【讨论】:

  • 每次我点击复选框都会出现 if ($('#checkpermission').is(':checked')) { alert(tObj); $.ajax({ url: 'checkpermission.php', data: {"Selected":tObj}, type: 'post', success:function(data) { alert(data); //Succes! } });
  • @AjayChthri else 条件仅在您取消选中复选框时才有效
【解决方案3】:

当您在点击后放置“如果条件”时,您的“其他条件”只有在您取消选中复选框时才会起作用。

检查这个例子:我在 else 条件下设置了一个警报。

http://jsfiddle.net/yHZsG/

【讨论】:

    猜你喜欢
    • 2011-02-19
    • 1970-01-01
    • 2018-09-17
    • 1970-01-01
    • 2018-08-25
    • 1970-01-01
    • 2012-07-02
    • 2015-10-30
    • 2015-02-28
    相关资源
    最近更新 更多