【发布时间】:2017-11-01 18:42:02
【问题描述】:
我目前有一个运行良好的 PHP 脚本,但是在添加 JavaScript 时我遇到了一个小问题。
我想要实现的是在一个运行良好的 php foreach 循环中显示结果,但我有一个 onclick JavaScript 函数,该函数假定将结果显示在与 foreach 循环的结果相同的行中,而是它只改变一个结果的当前值。
所以我目前有四种车型,价格。选择一个后,我希望名称和价格显示在 [echo "Select:" 的顶部。 $name] 行。
我当前的代码是这样的:
<?php
$cars = array(
array("Volvo",40.000),
array("BMW",45.000),
array("Saab",50.000),
array("Land Rover",60.000)
);
foreach($cars as $key){
$name = $key[0];
$price = $key[1];
echo "<span id='$name'></span> <span id='$price'></span><br />";
echo "Select: " . $name;
?>
<script type="text/javascript">
function grabData(d){
document.getElementById("<?php echo $price; ?>").innerHTML = d.getAttribute("data-price");
document.getElementById("<?php echo $name; ?>").innerHTML = d.getAttribute("data-title");
}
</script>
<input onclick="grabData(this);" type="radio" name="rate" data-price="<?php echo $key[1]; ?>" data-title="<?php echo $key[0]; ?>"><br />
<?php
}
?>
因此,如果选择了所有选项,最终结果应如下所示:
Volvo 40
Volvo:
BMW 45
BMW:
Saab 50
Saab:
Land Rover 60
Land Rover:
非常感谢任何帮助或指导。谢谢!
【问题讨论】:
-
你真的用价格作为显示价格的span的ID吗?如果您有两辆价格相同的汽车怎么办?
标签: javascript php foreach