问题是在每个按钮上单击都会创建一个新数组。是否可以将所有按钮值存储到单个数组中?那怎么可能。您可以看到它here
我在单击事件上通过ajax将数组解析为PHP,如下所示:
$('#validate').click(function(e) {
$.ajax({
type: "POST",
url: "somephp.php",
dataType: "json",
data: {
UserInput:items
},
})
});
var items = [];
$("#button-list button").each(function(index) {
var toggle = false;
$(this).on("click", function() {
toggle = !toggle;
if (toggle === true)
items.push(this.value);
else
items.splice(items.indexOf(this.value), 1);
console.log(items);
$("#results").text(items);
$(this).toggleClass("btn-default btn-success").find('span').toggleClass("glyphicon-plus glyphicon-minus");
});
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.3.1.min.js"></script>
<div id="button-list">
<button type="button" class="btn btn-default btn-sm" value="(1,1)">
<span class="glyphicon glyphicon-plus"></span> (1,1)</button>
<button type="button" class="btn btn-default btn-sm" value="(3,2)">
<span class="glyphicon glyphicon-plus"></span> (3,2)</button>
<button type="button" class="btn btn-default btn-sm" value="(4,4)">
<span class="glyphicon glyphicon-plus"></span> (4,4)</button>
</div>
<p id="results"></p>
最佳答案
我在这里看到了您的问题,但是将“单个”数组解析为php的唯一方法是将其转换为字符串。否则,将其保留不变,并在PHP中将其作为数组处理。
这是在Javascript中将数组转换为字符串的方法:
$('#validate').click(function(e) {
let k = items.join("");
$.ajax({
type: "POST",
url: "somephp.php",
dataType: "json",
data: {
UserInput:k
}
})
});
关于javascript - 将Javascript数组解析为PHP问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50041501/