2015-05-16 22 views
4

在PHP應用程序增加新的數據和修改存在同一頁上的數據,有單選按鈕選擇是或否,但它是可以正常使用它調用調用體上負載狀態的JQuery方法

$(document).ready(function(){ 

    $('input[type="radio"]').click(function(){ 
     if($(this).attr("value")=="yes"){ 
      $(".box").hide(); 
      $(".buttn").show(); 
     } 
     if($(this).attr("value")=="no"){ 
      $(".box").hide(); 
      $(".buttn").show(); 
     } 
    }); 
    }); 

}); 

上述方法中,但對於頁面加載的修改,我希望將值傳遞給基於數據庫表值的上述方法。就像調用特定JS方法的body標籤一樣。

回答

0

如果我沒理解你很好,你只需要修改你的代碼是一些自定義功能,,身體上的負荷不jQuery的..試試這個:

$.fn.myfunc = function(){ 

    $('input[type="radio"]').click(function(){ 
     if($(this).attr("value")=="yes"){ 
      $(".box").hide(); 
      $(".buttn").show(); 
     } 
     if($(this).attr("value")=="no"){ 
      $(".box").hide(); 
      $(".buttn").show(); 
     } 
    }); 
    }); 

}; 

,當你拉從數據庫內容後你只是把它叫做:

$ .fn.myfunc()

如果你需要傳遞一些變量,你可以做到這一點

$ .fn.myfunc(VAR1,VAR2),但你需要修改你的函數適當

心連心

0

您可以生成HTML頁面的過程中做到這一點。通常,這取決於您使用的模板引擎。但是,與普通PHP它可能是這樣的:

<?php 
$boxClass = 'box'; 
$btnClass = 'buttn'; 
if ($valueFromDb == 'yes') { 
    $boxClass .= ' hidden'; 
} else { 
    $btnShow .= ' hidden'; 
} 
?> 
<!-- some HTML code --> 
<div class="<?= $boxClass; ?>">Here is a box</div> 
<div class="<?= $btnClass; ?>">Here is a button</div> 

,並定義.hidden CSS類爲.hidden { display: none; }。按照這種方式,您可以在沒有JS的情況下隱藏所有需要的塊。

UPD:此外,而不是生成if條件裏面類,可以使整個HTML塊這樣的:

<?php if ($someValue == true) { ?> 

<!-- render first HTML block --> 

<?php } else { ?> 

<!-- render another HTML block --> 

<?php } ?> 

這種方式可能更合適。