jquery获取多个checkbox的值异步提交给php的方法
本文实例讲述了jquery获取多个checkbox的值异步提交给php的方法。分享给大家供大家参考。具体实现方法如下:
html代码:
<tr> <td><input type="checkbox" name="uid" value="<?=$item['mtaccount_id']?>"></td> <td><?=$item['mtaccount_id']?></td> <td><?=$item['account_id']?></td> <td><?=$item['account_name']?></td> <td><?=$item['server']?></td> <td><?=$item['platform']?></td> </tr>
我的是html里的数据是从数据库读出来的,在此可以理解为下面代码
<li><input type="checkbox" name="uid" value="1" />用户1</li> <li><input type="checkbox" name="uid" value="2" />用户2</li> <li><input type="checkbox" name="uid" value="3" />用户3</li> <li><input type="checkbox" name="uid" value="4" />用户4</li>
jquery代码:
var mt4Ids = []; $('input[name=uid]').each(function() { if(this.checked) { mt4Ids.push($(this).val()); } }); data = { mt4Ids : JSON.stringify(mt4Ids) }; var pUrl = "/a/manageUser.html"; $.post(pUrl, data, function(data){ if(data.state == 1){ alert(data.msg); location.href = "/h/permission.html"; }else{ alert("操作失败"); } }, 'json');
PHP代码
$mt4Ids = !empty($_POST['mt4Ids']) ? $_POST['mt4Ids'] : false; $stripMt4Ids = preg_replace('/[\"\[\]]/', '', $mt4Ids); $mt4IdsToArr = explode(',', $stripMt4Ids); foreach($mt4IdsToArr as $uid){ permission_relation::add($uid, $gid); } $data = array( 'state' => 1, 'msg' => '操作成功' ); echo json_encode($data); return false; // $gid 可忽略
希望本文所述对大家的php程序设计有所帮助。