[英]creating simple JS with PHP
我試圖用PHP重新創建下面的JS。 原因是編號的類和值實際上是從mysql數據庫中提取的ID。 我在一個區域中創建報告,下面的代碼顯示和隱藏該報告的規則。 由於不同的報表具有不同的規則,因此它會根據分組顯示和隱藏規則,這些規則在以下代碼中確定為#rule_who。
當嘗試重新創建以下內容時,我嘗試使用while循環,但是它非常荒謬。 JavaScript或AJAX中是否存在更有效的方式來顯示和隱藏div,而該div更適合於使用大量div? 2,3,4等不應是遞增的數字,因為它會依賴ID,因此隨着報告的刪除,某些數字會隨着時間的流逝而消失。
任何幫助,將不勝感激。 謝謝
<script>
//<![CDATA[
$(window).load(function(){
$(".2").hide();
$(".3").hide();
$(".4").hide();
$('#rule_who').on('change', function () {
if(this.value === "2"){
$(".2").show();
$(".3").hide();
$(".4").hide();
} else if(this.value === "3"){
$(".2").hide();
$(".3").show();
$(".4").hide();
} else if(this.value === "4"){
$(".2").hide();
$(".3").hide();
$(".4").show();
} else {
$(".2").hide();
$(".3").hide();
$(".4").hide();
}
});
});//]]>
</script>
編輯:謝謝大家的幫助。
我最終使用的是以下內容:
<script type='text/javascript'>//<![CDATA[
$(window).load(function(){
$("#rule_who").change(function() {
$("div.specific_rules").hide();
var targetId = $(this).val();
console.log($(targetId).html());
// show the new selected one
$("#"+targetId).show();
});
});//]]>
</script>
我認為您可以:
$('.' + this.value).show();
$('.' + this.value).siblings().hide();
試試這個( 這里是示例 ):
$('.1, .2, .3').hide();
$(window).load(function(){
$('#rule_who').on('change', function () {
var elems = document.getElementsByTagName('div');
for (var i = 0; i < elems.length; i++) {
if (elems[i].className != this.value) {
elems[i].style.display = 'none';
} else {
elems[i].style.display = 'block';
}
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.