2016-08-13 130 views
0

我需要隱藏/顯示我的代碼中的HTML元素。 該頁面是在PHP中生成的。如何隱藏/顯示HTML元素從PHP生成代碼的可見性?

想在這裏semplify我的代碼,你區域中的樣品,顯示我的煩惱......

echo '<button type="button" onclick="hide_show('.$n_images.')">Hide/show details</button>'; 

echo '<script language="javascript">'; 
echo 'function hide_show(n_images)'; 
echo ' {'; 
echo '  element = document.getElementById("details_0");'; 
echo '  if (element.style.visibility == \'visible\') {'; 
echo '  element.style.visibility = \'hidden\''; 
echo '  }'; 
echo '  else {'; 
echo '  element.style.visibility = \'visible\''; 
echo '  }'; 
echo ' }'; 
echo '</script>'; 

在這種情況下,代碼工作和所有它的罰款。

我的問題是,我已經幾個元素顯示/隱藏,所以我需要用時間來代替行

echo '  element = document.getElementById("details_0");'; 

,我不知道作爲推廣代碼...

我的最終代碼應該是這樣的..。

echo '<button type="button" onclick="hide_show('.$n_images.')">Hide/show details</button>'; 

echo '<script language="javascript">'; 
echo 'function hide_show(n_images)'; 
echo ' {'; 
echo ' while (current_index < n_images) {'; 
echo '  element = document.getElementById("details_0");'; --> this is the line I need to generalize !!! 
echo '  if (element.style.visibility == \'visible\') {'; 
echo '  element.style.visibility = \'hidden\''; 
echo '  }'; 
echo '  else {'; 
echo '  element.style.visibility = \'visible\''; 
echo '  }'; 
echo '  current_index = current_index + 1;'; 
echo ' }'; 
echo ' }'; 
echo '</script>'; 

任何幫助/建議/示例?

預先感謝您!

切薩雷

+1

嗨Cesare讓它更容易爲什麼不只是使用一個php echo語句來整個JavaScript 。在你的while循環之前,將current_index初始化爲0,在你需要概括的行中,在你的js中,getElementById(「details_」+ current_index) –

回答

1

嗨Cesare使它更容易爲什麼不只是使用一個PHP回聲聲明爲您的整個JavaScript。在你的while循環之前,將current_index初始化爲0.在你需要概括的行中的js中,getElementById(「details_」+ current_index)

1
echo '<button type="button" onclick="hide_show('.$n_images.')">Hide/show details</button>'; 
echo '<script language="javascript">'; 
echo 'var i = 0'; 
echo 'function hide_show(n_images)'; 
echo ' {'; 
echo ' while (current_index < n_images) {'; 
echo '  element = document.getElementById("details_" + i);'; --> this is the line I need to generalize !!! 
echo '  if (element.style.visibility == \'visible\') {'; 
echo '  element.style.visibility = \'hidden\''; 
echo '  }'; 
echo '  else {'; 
echo '  element.style.visibility = \'visible\''; 
echo '  }'; 
echo '  current_index = current_index + 1;'; 
echo '  i++;'; //increment variable i value... 
echo ' }'; 
echo ' }'; 
echo '</script>'; 

只是初始化像「變種我櫃檯,並添加到不斷ID。