Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从文档中动态获取给定的div id_Php_Javascript - Fatal编程技术网

Php 从文档中动态获取给定的div id

Php 从文档中动态获取给定的div id,php,javascript,Php,Javascript,我不是开发人员,但我已经涉猎了一段时间。希望你能帮忙 我有几个ID:s的div,它们是通过php动态提供给它们的。我有一个通过复选框调用的函数,该复选框隐藏并显示div。我现在要做的是从文档中获取div id并将它们放入函数中 我从不同的论坛上复制了一些代码,如果我硬编码div名称,它就可以工作。不知道我现在在做什么,如果有任何帮助,我将不胜感激 这是我的 将id分配给div: $a .= "<div id='$go[media_caption]" . $i . "'>"; 职能:

我不是开发人员,但我已经涉猎了一段时间。希望你能帮忙

我有几个ID:s的div,它们是通过php动态提供给它们的。我有一个通过复选框调用的函数,该复选框隐藏并显示div。我现在要做的是从文档中获取div id并将它们放入函数中

我从不同的论坛上复制了一些代码,如果我硬编码div名称,它就可以工作。不知道我现在在做什么,如果有任何帮助,我将不胜感激

这是我的

将id分配给div:

$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开头的字符串?