gpt4 book ai didi

javascript - PHP 数组不通过循环显示所有值

转载 作者:行者123 更新时间:2023-12-03 03:47:19 25 4
gpt4 key购买 nike

我正在编写一个 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

等等,等等

最佳答案

发生这种情况的原因是 $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]在每个实例中都是相同的,并且没有任何东西可以“包含”每个数组。

你确实需要一个多维数组,更像这样:

[0] => [
[0] => ABC
[1] => DEF
[2] => GHI
[3] => JKL
],
[1] => [
[0] => MNO
[1] => 123A
[2] => 123B
[3] => 123C
],
// ...

如果您使用 var_dump($myArray[0]); 您将获得“第一个”集合(数组从 0 开始索引):

[0] => ABC
[1] => DEF
[2] => GHI
[3] => JKL

并且 var_dump($myArray[1]); 为您提供第二组:

[0] => MNO
[1] => 123A
[2] => 123B
[3] => 123C

等等...

多维数组中的按键可以对应按下的按钮,例如

  • 按钮 1:$myArray[0]
  • 按钮 2:$myArray[1]
  • 按钮 3:$myArray[2]
  • 按钮 4:$myArray[3]

关于javascript - PHP 数组不通过循环显示所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45329832/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com