jquery gets the values of multiple checkbox asynchronously submitted to php
- 2020-07-21 06:47:44
- OfStack
html code:
<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>
My html data is read from the database, which can be interpreted as the following code
<li><input type="checkbox" name="uid" value="1" /> The user 1</li>
<li><input type="checkbox" name="uid" value="2" /> The user 2</li>
<li><input type="checkbox" name="uid" value="3" /> The user 3</li>
<li><input type="checkbox" name="uid" value="4" /> The user 4</li>
jquery code:
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(" The operation failure ");
}
}, 'json');
PHP code
$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' => ' Operation is successful '
);
echo json_encode($data);
return false;
// $gid Can be ignored
This is the end of this article, I hope you enjoy it.