我正在编写一个php函数,它将内容附加到$ results变量并返回附加到它的所有结果。
我有一个变量$ myArray,它包含许多独立的数组,如下所示
Array(
[0] => ABC
[1] => DEF
[2] => GHI
[3] => JKL
)
Array(
[0] => MNO
[1] => 123A
[2] => 123B
[3] => 123C
)
Array(
[0] => orange
[1] => yellow
[2] => green
[3] => blue
)
在我的代码中,我通过内容循环生成按钮和数据。我理想情况下,如果第一个按钮被按下第一个数组的内容(ABC,DEF,GHI,JKL),第二个按钮(MNO,123A,123B,123C)等等。
这是我生成内容的循环
for($index=0; $index < count($exampleArray); index++){
$myArray = array_values(array_filter($exampleArray[$index]["Column2"]));
$returnVariable .= '<td>
<button type="button" class="open-my-modal btn btn-primary"
data-numbers="'.htmlspecialchars(json_encode($myArray), ENT_QUOTES, 'UTF-8').'" </td>';
上面的代码根据传递的数据生成不同的按钮,并发送到模态。我创建id的模态代码部分位于
之下$returnVariable .= '<tr>
<td><span id ="value1"></span></td>
<td><span id ="value2"></span></td>
<td><span id ="value3"></span></td>
<td><span id ="value4"></span></td>
</tr>
然后我有一个脚本,当打开模态时,我将数据链接到html id。
$returnVariable .= '<script>
$(document).ready(function () {
$(".open-my-modal").click(function(){
$("#value1").html($(this).data("numbers")[0]);
问题是无论什么按钮显示相同的信息。并且在任何按钮上传递的唯一数据是ABC,DEF,GHI,JKL。
我打电话
$("#value1").html($(this).data("numbers")[0]); Only ABC will show.
如果我打电话
$("#value1").html($(this).data("numbers")); It shows ABC up to JKL
数据应根据点击的按钮动态变化。 MNO等,橙色,黄色从未出现过。每个按钮只会占用第一个数组。
内容将动态循环,例如
<td><span id ="value1"></span></td> = ABC
<td><span id ="value2"></span></td>= DEF
<td><span id ="value3"></span></td>= GHI
<td><span id ="value4"></span></td>= HIJ
下一步按钮点击值=
<td><span id ="value1"></span></td> = MNO
<td><span id ="value2"></span></td>= 123A
<td><span id ="value3"></span></td>= 123B
<td><span id ="value4"></span></td>= 123C
等等
答案 0 :(得分:1)
发生这种情况的原因是因为$myArray
被覆盖了。你发布了:
Array(
[0] => ABC
[1] => DEF
[2] => GHI
[3] => JKL
)
Array(
[0] => MNO
[1] => 123A
[2] => 123B
[3] => 123C
)
Array(
[0] => orange
[1] => yellow
[2] => green
[3] => blue
)
嗯,数组键[0],[1],[2],[3]
在每个实例中是相同的,并且没有任何内容可以包含&#34;每个阵列。
你真的需要一个多维数组,更像是这样:
[0] => [
[0] => ABC
[1] => DEF
[2] => GHI
[3] => JKL
],
[1] => [
[0] => MNO
[1] => 123A
[2] => 123B
[3] => 123C
],
// ...
如果您使用var_dump($myArray[0]);
,您将获得&#34;第一个&#34; set(数组为0索引):
[0] => ABC
[1] => DEF
[2] => GHI
[3] => JKL
var_dump($myArray[1]);
为您提供第二组:
[0] => MNO
[1] => 123A
[2] => 123B
[3] => 123C
等...
多维数组中的键可以对应于按下的按钮,例如
$myArray[0]
$myArray[1]
$myArray[2]
$myArray[3]