【发布时间】:2026-02-13 05:00:01
【问题描述】:
我对 PHP 中的 javascript 有疑问。我想使用 Javascript 函数将 ccs 属性 display 更改为 block 仅用于那些包含 php 中某些文本的 div 元素变量取自MySQL表中的列。我不知道这种方式是否真的可行,但代码如下:
PHP:
$sql="SELECT * FROM Filter1";
$result=$conn->query($sql);
while($row = $result->fetch_assoc()) {
$meno=$row['meno'];
echo '<script type="text/javascript"> filterTovar() </script>';
JavaScript:
function filterTovar()
{
var meno='<?php echo $meno; ?>';
var produkt=document.getElementsByClassName("tovar");
produkt.style.display="none";
for(var i=0;i<produkt.length;i++)
{
produkt[i].style.display="none";
}
for(var i=0;i<produkt.length;i++)
{
if(produkt[i].innerHTML==meno)
{
produkt[i].style.display="block";
}
}
}
我正在尝试制作某种过滤器,根据表格的结果只显示某些 div,但上面的代码不起作用,我不确定是否可以这样工作。
我从中获取数据的 MySQL 表:
id meno znacka cena op format
425 H81M-S2V GIGABYTE 46.03 DDR3 mATX
426 H110N GIGABYTE 83.05 DDR4 mITX
编辑: 更好地解释我的问题:用户使用复选框过滤我网站上的产品,在数据库中 php 创建具有相应产品的表。我上面的代码应该采用该表并使用列“meno”,其中产品名称仅显示那些包含字符串“meno”的 div。
EDIT2:我想问是否可以通过 DOMDocument() 更改或使用元素 css。如果是,它会回答我的问题。
【问题讨论】:
-
能否将数据库结构添加到您的问题中?
-
请提供minimal reproducible example 并更好地解释“取决于结果” 意味着什么被隐藏
标签: javascript php html css mysql