Php 从文档中动态获取给定的div id
我不是开发人员,但我已经涉猎了一段时间。希望你能帮忙 我有几个ID:s的div,它们是通过php动态提供给它们的。我有一个通过复选框调用的函数,该复选框隐藏并显示div。我现在要做的是从文档中获取div id并将它们放入函数中 我从不同的论坛上复制了一些代码,如果我硬编码div名称,它就可以工作。不知道我现在在做什么,如果有任何帮助,我将不胜感激 这是我的 将id分配给div:Php 从文档中动态获取给定的div id,php,javascript,Php,Javascript,我不是开发人员,但我已经涉猎了一段时间。希望你能帮忙 我有几个ID:s的div,它们是通过php动态提供给它们的。我有一个通过复选框调用的函数,该复选框隐藏并显示div。我现在要做的是从文档中获取div id并将它们放入函数中 我从不同的论坛上复制了一些代码,如果我硬编码div名称,它就可以工作。不知道我现在在做什么,如果有任何帮助,我将不胜感激 这是我的 将id分配给div: $a .= "<div id='$go[media_caption]" . $i . "'>"; 职能:
$a .= "<div id='$go[media_caption]" . $i . "'>";
职能:
var editorial = [id^='editorial']);
function visiblox(arrDiv, hs) {
var disp = (hs) ? 'none' : 'block';
for(var x = 0; x < arrDiv.length; x++) {
document.getElementById(arrDiv[x]).style.display = disp;
}
}
function chk(what, item) {
if(item) {
visiblox(what, false);
} else {
visiblox(what, true);
}
}
<input type='checkbox' onclick='chk(editorial, this.checked);' checked> Editorial</p>
调用函数:
var editorial = [id^='editorial']);
function visiblox(arrDiv, hs) {
var disp = (hs) ? 'none' : 'block';
for(var x = 0; x < arrDiv.length; x++) {
document.getElementById(arrDiv[x]).style.display = disp;
}
}
function chk(what, item) {
if(item) {
visiblox(what, false);
} else {
visiblox(what, true);
}
}
<input type='checkbox' onclick='chk(editorial, this.checked);' checked> Editorial</p>
您可以让PHP输出一个数组供Javascript使用吗?当PHP输出ID时,它还会将它们添加到Javascript数组语法中的字符串中。大概是这样的:
$a .= "<div id='$go[media_caption]" . $i . "'>";
$jsIDs .= "'$go[media_caption]',";
这应该能奏效 是否所有div都被分配了相同的ID?行var editive=[ID^='editive'];有很多语法错误。你知道编辑变量包含什么吗?我可以想象它是。基本上,我希望它包含所有以“编辑”开头的div。我希望在单击复选框时隐藏/显示它们。感谢拉瑟,我希望它包含所有以editor开头的div id。。作为一个由逗号和空格分隔的列表。我正试图了解这一点。在php中,在foreach$pages中将div创建并分配ID为$go。因此,每个DIV都从数据库中的一个条目中获取名称,再加上一个&i。这个看起来对吗?对于$go{$a.=;$jsIDs.='$go[media_caption]',;}等每个$pages,在创建时,是否也可以将它们添加到一个列表中,然后在javascript中调用?基本思想是,除了使用PHP生成HTML外,还可以生成少量javascript。具体来说,您可以使用PHP构建一个包含Javascript数组的字符串。您构建的Javascript数组包含PHP生成的div的ID。您希望$jsIDs字符串如下所示:'id1'、'id2'、'id3',等等。最后,您去掉尾随的逗号,并在字符串周围放置有效的Javascript代码,因此它最终看起来如下所示:var idArr=['id1','id2','id3'];。这是一个有效的Javascript字符串,由PHP构建并存储在PHP字符串中。您可以使用PHP echo语句输出它,将其作为PHP正在构建的HTML文档的一部分!谢谢不,只有一件事我忘了提;有不同的div集。有些被称为社论,有些被称为其他东西。我会有一个对应的复选框为每个。有没有办法把他们分开;ie$JSID将只包含以editive开头的字符串?