2012-11-29 43 views
0

我会尽量简短明了。PHP中隐藏的数组(下拉式)

我不太了解PHP。我有一个数组,只是看起来太长:

http://i.stack.imgur.com/u4y11.jpg(不能发表图片呢,所以请点击)

正如你所看到的,有7个选项,它看起来丑陋,长。

我想将它们分为可隐藏的部分。像:

3首选项[点击这里到下拉选项] 4最新的选项[点击这里到下拉选项]

相反

选项1 选项2 选项3 选项4 期权5 选项6 选项7

你知道吗?

如果有人可以给我在这个问题上一盏灯,我会深深感谢:

它基本上是7拷贝和粘贴这样的:您的网页上

 

    $url_bgcolor = get_bloginfo('stylesheet_directory') . '/admin/images/bgcolor/'; 
    $options[] = array("name" => "Cor da letra do titulo da pagina", 
         "desc" => "Selecione a cor secundária do seu website.", 
         "id" => $shortname."_style2", 
         "std" => "", 
         "type" => "images", 
         "options" => array(
           'default2.css' => $url_bgcolor . 'dark.png', 
           'black2.css' => $url_bgcolor . 'black.png', 
           'green2.css' => $url_bgcolor . 'green.png', 
           'blue2.css' => $url_bgcolor . 'blue.png', 
           'purple2.css' => $url_bgcolor . 'purple.png', 
           'orange2.css' => $url_bgcolor . 'orange.png', 
           'red2.css' => $url_bgcolor . 'red.png' 
       )); 

回答

0

为了hide/show元素,你需要使用像JavaScript这样的客户端脚本。这里有一个简单的javascript函数,可以在你的阵列的showinghiding之间切换。

在你的<head> HTML代码添加下面的脚本/函数 -

<script type="text/javascript"> 
function toggleView(aid, id, text) { 
    var divView = document.getElementById(id); 
    var anchor = document.getElementByID(aid); 

    if (divView.style.display != "block") { 
     divView.style.display = "block"; 
     anchor.innerHTML = "click here to hide " + text + " options"; 
    } else { 
     divView.style.display = "none"; 
     anchor.innerHTML = "click here to show " + text + " options"; 
    } 
} 
</script> 

然后在你的<body>您可以创建一个<a>锚,然后<div>

你的锚标记和DIV会看像这样:

<a id="toggle3" onclick="toggleView('toggle3', 'options3', 'first 3')">click here to show first 3 options</a> 
<div id="options3" style="display: none"> 
Option 1 
Option 2 
Option 3 
</div> 

<a id="toggle4" onclick="toggleView('toggle4', 'options4', 'last 4')">click here to show last 4 options</a> 
<div id="options4" style="display: none"> 
Option 4 
Option 5 
Option 6 
Option 7 
</div> 

EDITED 11/30

这里是我会怎么做 -

的Javascript
线#438 admin-interface.php<?php }添加的JavaScript function()

<?php 
    //Hide/Show Image Groups 
    ?> 
<script type="text/javascript"> 
function toggleView(aid, id, text) { 
    var divView = document.getElementById(id); 
    var anchor = document.getElementByID(aid); 

if (divView.style.display != "block") { 
    divView.style.display = "block"; 
    anchor.innerHTML = "click here to hide " + text + " options"; 
} else { 
    divView.style.display = "none"; 
    anchor.innerHTML = "click here to show " + text + " options"; 
} 
} 
</script> 

Anchor/DIV
线#603 admin-interface.php,前//$output .= '<div class="section ...添加anchors<div>
注:如果您已经添加的JavaScript function()以上,这可能是线#621,而不是603#

if ($value['type'] == "images" && $counter == 1) 
{$output .= '<a id="toggle3" onclick="toggleView(\'toggle3\', \'options3\', \'first 3\')">click here to show first 3 options</a>'."\n" . '<div id="options3" style="display: none">'."\n";} 
if ($value['type'] == "images" && $counter == 4) 
{$output .= '<a id="toggle4" onclick="toggleView(\'toggle4\', \'options4\', \'last 4\')">click here to show last 4 options</a>'."\n" . '<div id="options4" style="display: none">'."\n";} 

线#957的admin-interface.php}$output .= '</div>';return array($output,$menu);上#958-960之前,添加</div>关闭标签
注:如果您已经添加的JavaScript function()和上述210和<div>的,它可能是线#979,而不是957#

if ($value['type'] == "images" && ($counter == 1 || $counter == 4)) 
{$output .= '</div>'."\n";} 
+0

感谢您的回答 我编辑一个WordPress主题,因此它在PHP。 的文件我想我已经管理,通过增加它的header.php 但身体的一部分,它更复杂,因为它是一个PHP文件中,一个PHP函数...我应该使用echo“<一个ID [等]'? –

+0

所以,这不是workign ... 当我添加回声“”,它出现在标记上方,因为我认为$选项是某种功能,被称为别的地方,内容是数组,你懂? 这里是完整的文件: http://www.mediafire.com/?qxfeiay872e2i3a –