我有一个带有循环的多页表。该表包含复选框。当选择一个或多个复选框时,将从值中显示为列表。在一个页面内一切正常工作,但是当我切换到第二页并选择复选框时,列表中的值立即被重置,并且仅从第二页显示值。
表中的循环
<?php
while($row1 = mysqli_fetch_array($result1))
{
$rand1 = rand() . "n";
$rand2 = rand() . "n";
$rand3 = rand() . "n";
$rand4 = rand() . "n";
$rand5 = rand() . "n";
$rand6 = rand() . "n";
echo '<tr><td><font face="Verdana">'.$row1["name"].'</font></td>';
echo '<td>
<center>
<font face="Verdana">
<b>
<input type="checkbox"
onclick="usluga()"
id="'.$rand1.'"
class="checkbox-offers"
name="• <font size=2px>'.$row1["name"].'</font><br/>" value="'.$row1["len"].'" />
<label for="'.$rand1.'">'.preg_replace("/^$/","<font color=red size=2px style='text-transform: uppercase;'>Услуга не оказывается</font>",$row1["len"]).'</label>
</b>
</font>
</center>
</td>';
echo '<td><center><font face="Verdana"><b><input type="checkbox" onclick="usluga()" id="'.$rand2.'" class="checkbox-offers" name="• <font size=2px>'.$row1["name"].'<br/>" value="'.$row1["myt"].'" /><label for="'.$rand2.'">'.preg_replace("/^$/","<font color=red size=2px style='text-transform: uppercase;'>Услуга не оказывается</font>",$row1["myt"]).'</label></b></font></center></td>';
echo '<td><center><font face="Verdana"><b><input type="checkbox" onclick="usluga()" id="'.$rand3.'" class="checkbox-offers" name="• <font size=2px>'.$row1["name"].'<br/>" value="'.$row1["tr"].'" /><label for="'.$rand3.'">'.preg_replace("/^$/","<font color=red size=2px style='text-transform: uppercase;'>Услуга не оказывается</font>",$row1["tr"]).'</label></b></font></center></td>';
echo '<td><center><font face="Verdana"><b><input type="checkbox" onclick="usluga()" id="'.$rand4.'" class="checkbox-offers" name="• <font size=2px>'.$row1["name"].'<br/>" value="'.$row1["kr"].'" /><label for="'.$rand4.'">'.preg_replace("/^$/","<font color=red size=2px style='text-transform: uppercase;'>Услуга не оказывается</font>",$row1["kr"]).'</label></b></font></center></td>';
echo '<td><center><font face="Verdana"><b><input type="checkbox" onclick="usluga()" id="'.$rand5.'" class="checkbox-offers" name="• <font size=2px>'.$row1["name"].'<br/>" value="'.$row1["var"].'" /><label for="'.$rand5.'">'.preg_replace("/^$/","<font color=red size=2px style='text-transform: uppercase;'>Услуга не оказывается</font>",$row1["var"]).'</label></b></font></center></td>';
echo '<td><center><font face="Verdana"><b><input type="checkbox" onclick="usluga()" id="'.$rand6.'" class="checkbox-offers" name="• <font size=2px>'.$row1["name"].'<br/>" value="'.$row1["kor"].'" /><label for="'.$rand6.'">'.preg_replace("/^$/","<font color=red size=2px style='text-transform: uppercase;'>Услуга не оказывается</font>",$row1["kor"]).'</label></b></font></center></td>';
}
?>
输出复选框值
function usluga() {
var x = [].map.call(document.querySelectorAll('[class="checkbox-offers"]:checked'), function(v) {
return v.name
}).join(' ');
document.getElementById("usluga").innerHTML = x;
};
这里的值显示为
<p id="usluga"></p>
帮助,请。第二天我在努力解决这个问题。
谢谢大家!
这是预期的行为,当你切换到另一个页面时,变量不会转移。
您可以通过更改函数将变量存储在本地存储中来解决这个问题,这样您可以在切换到另一个页面后检索它。
这可能会有帮助:通过JavaScript将变量从一个html页面传递到另一个页面