我有一个多选项目,它允许我检查多个项目。我想通过 ajax 请求发送这些选定的项目,然后我想将这些项目导入到我的数据库中。我的问题是,我不知道如何循环通过 POST 请求获取的传递数组。
Ajax 请求
function insertPlayers(){
var data = $("#playerCards").serialize();
$.ajax({
url: "/database/playercards.php",
type: "POST",
data: data,
success: function (response) {
}
});
}
这是我的 HTML 多重选择:
<select multiple id="assignAccount" name="assignAccount" class="form-control select">
// Options inserted by JQuery later
</select>
这是我在发送 Ajax 请求之前发出警报时数据的样子:
playersearch=test&buypercentage=85&assignAccount=9&assignAccount=10&assignAccount=11
如何将选项添加到我的多个选择框:
// loop the response
$.each(response, function(i, e){
// just use your column names, these are just an example, but you get the idea
opt += '<option value="'+e.id+'">'+ e.email + ' - ' + e.coins + '</option>';
});
// append the markup to that select box
$('#assignAccount').html(opt)
我的问题: 现在应该清楚的是,assignAccount 变量是一个数组,我想在 PHP 中循环它,但我不知道如何做到这一点,因为我不知道索引。这是我尝试过的:
$accountIds = $_POST['assignAccount'];
foreach ($accountIds as $account){
echo $account;
}
最佳答案
改变
<select multiple id="assignAccount" name="assignAccount" class="form-control select">
更像是
<select id='assignAccount' name='assignAccount[]' multiple='multiple' class='form-control select'>
关于javascript - 循环遍历多个选择的ajax数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27306768/