2016-03-15 83 views
0

我想改變我的HTML和PHP代碼的錨標記的類。 這是截圖: enter image description here替換類<a></a>基於狀態

及以下PHP代碼爲截圖

這是我的PHP代碼:

<?php echo "<td>{$id}</td>" ?> 
     <?php echo "<td>{$ontrack_websiteName}</td>" ?> 
     <?php echo "<td>{$ontrack_url}</td>" ?> 
     <?php echo "<td>{$ontrack_geography}</td>" ?> 
     <?php echo "<td>{$ontrack_Comment}</td>" ?> 
     <?php echo "<td><a class='btn btn-success' href='status_db.php?id={$id}&status={$ontrack_status}'> 
     <span>$ontrack_status</span></a> 
     </td>" ?> 
     <?php echo "<td width='100px'><a class='btn btn-warning btn-sm' href='archiveProcess.php?id={$id}' role='button'><span class='glyphicon glyphicon-save-file' aria-hidden='true'></span></a> 
    <a class='btn btn-danger btn-sm' href='delete_websiteOntrack.php?id={$id}' role='button'><span class='glyphicon glyphicon-trash' aria-hidden='true'></span></a></td>" ?> 

有一個從「狀態」列未來兩個值。一個是「啓用」,另一個是「禁用」。當用戶點擊「啓用」綠色鏈接。它會將DB中的值更改爲「禁用」並顯示「禁用」。當它顯示「禁用」時,我想將背景更改爲「btn btn-danger」類,以便背景變爲紅色。

但目前。它只顯示爲綠色背景,如下所示: enter image description here

Pleae很樂意幫助我。我嘗試做不同的方式,但始終未能:(

回答

1

你可以做類似下面

上的成功,當顯示「禁止」:

$("#btn-change").removeClass("btn-success"); 
$("#btn-change").addClass("btn-danger") 

btn-change是按鈕的ID 。

1

好了,首先你不應該用這麼多<?php ?>標籤。

什麼你實際上是在尋找是一個簡單的if語句:

<?php 
    //if status is enable, set button class to success 
    if($ontrack_status == "Enable"){ 
     $btn_class = "success"; 
    }else{ 
     $btn_class = "danger"; //else set it to danger 
    } 
//put btn class into the string: 
echo "<td>{$id}</td> 
     <td>{$ontrack_websiteName}</td> 
     <td>{$ontrack_url}</td> 
     <td>{$ontrack_geography}</td> 
     <td>{$ontrack_Comment}</td> 
     <td> <!-- set button class here--> 
     <a class='btn btn-{$btn_class}' href='status_db.php?id={$id}&status={$ontrack_status}'> 
      <span>$ontrack_status</span> 
     </a> 
     </td> 
     <td width='100px'> 
     <a class='btn btn-warning btn-sm' href='archiveProcess.php?id={$id}' role='button'> 
      <span class='glyphicon glyphicon-save-file' aria-hidden='true'></span> 
     </a> 
     <a class='btn btn-danger btn-sm' href='delete_websiteOntrack.php?id={$id}' role='button'> 
      <span class='glyphicon glyphicon-trash' aria-hidden='true'></span> 
     </a> 
     </td>"; 
?> 
+0

非常感謝教學。它正在工作:) – Achilles

1

我完全不知道爲什麼您使用的是新的回波開放和每行關閉PHP。你可以只是做

<?php 

echo "<td>{$id}</td> 
    <td>{$ontrack_websiteName}</td> 
    <td>{$ontrack_url}</td>... 

除此之外,回答你的問題,你需要使用一個if-statement。因此,例如:

if($ontrack_status == 'Disable') { 
    echo "<td><a class='btn btn-success' href='status_db.php?id={$id}&status={$ontrack_status}'> 
    <span>$ontrack_status</span></a> 
    </td>" 
}else{ 
    echo "<td><a class='btn btn-danger' href='status_db.php?id={$id}&status={$ontrack_status}'> 
    <span>$ontrack_status</span></a> 
    </td>" 
} 

一個更好的解決辦法是使用shorthands

echo "<td><a class='btn btn-".($ontrack_status == 'Disabled' ? 'success' : 'danger')."' href='status_db.php?id={$id}&status={$ontrack_status}'> 
    <span>$ontrack_status</span></a> 
    </td>" 
+0

謝謝你。它現在工作正常..將消除PHP標籤:) – Achilles

0
<script type="text/javascript"> 
var status = <?= $ontrack_status ?>; 
$(document).ready(function() { 
    if(status == "Enable"){ 
    $("a").addClass("btn-success"); 
    $("a").removeClass("btn-danger"); 
    } else { 
    $("a.status").addClass("btn-danger"); 
    $("a.status").removeClass("btn-success"); 
}); 

<a class="status " href=""></a>