[英]I want to change color of text in a table loop based on text value
我有一個循環table
顯示下拉表單發布(lotstatus)的結果。 我希望能夠根據它們在form
selected
的value
來更改文本的color
。
if($result = mysqli_query($conn, $sql)){ if(mysqli_num_rows($res) > 0){ echo " <table class='table table-bordered table-striped' width='100%' data-pagination='true' data-search='true'>"; echo " <thead>"; echo " <tr>"; echo " <th>Status</th>"; echo " <th>Street #</th>"; echo " <th>Street Name</th>"; echo " <th>City</th>"; echo " <th>Parcel ID</th>"; echo " <th>Lot # (Unit)</th>"; echo " <th>Contract Signed Date</th>"; echo " <th>Closing Date</th>"; echo " <th>Action</th>"; echo "</tr>"; echo "</thead>"; echo " <tbody>"; while($row = mysqli_fetch_array($res)){ echo " <tr>"; echo " <td>" . " <div class='statuscolor'>". $row['lotstatus'] . "</div>". "</td>"; echo " <td>" . $row['streetnumber'] . "</td>"; echo " <td>" . $row['streetname'] . "</td>"; echo " <td>" . $row['city'] . "</td>"; echo " <td>" . $row['parcelid'] . "</td>"; echo " <td>" . $row['lotnumber'] . "</td>"; echo " <td>" . $row['contractsigneddate'] . "</td>"; echo " <td>" . $row['closingdate'] . "</td>"; echo " <td>"; echo "<a class='btn btn-info mr-2 mt-2' href='readLot.php?id=". $row[' id '] ."' title='View' data-toggle='tooltip'><span style='margin-left: 7px;' class='la la-file-o ks-icon'></span></a>"; echo "<a class='btn btn-warning mr-2 mt-2' href='updateLot.php?id=". $row[' id '] ."' title='Edit ' data-toggle='tooltip'><span style='margin-left: 7px;' class='la la-pencil ks-icon'></span></a>"; echo " <a class='btn btn-danger mt-2' href='deleteLot.php?id=". $row[' id '] ."' title='Delete ' data-toggle='tooltip'><span style='margin-left: 7px;' class='la la-close ks-icon'></span></a>"; echo "</td>"; echo "</tr>"; } echo "</tbody>"; echo "</table>"; // Free result set mysqli_free_result($result); } else{ echo " <p class='lead'><em>No Lots were found.</em></p>"; } }
在這里以我正在使用的形式:用戶選擇批次狀態-我想根據他們選擇的內容更改狀態的顏色。
<select class="form-control" value="<?php echo $lotstatus; ?>" id="lotstatus" name="lotstatus"> <option value="NA">N/A</option> <option value="Executed">Executed</option> <option value="Not Interested">Not Interested</option> <option value="Hold">Hold</option> <option value="Title Ordered">Title Ordered</option> <option value="Vetting">Vetting</option> <option value="Survey Ordered">Survey Ordered</option> <option value="Lean Search Ordered">Lean Search Ordered</option> <option value="Clear to Close">Clear to Close</option> <option value="Closed">Closed</option> </select>
我嘗試設置選項值的樣式,還嘗試選擇字段的text()值。 什么都沒用...幫助!
首先,您需要為每行添加狀態:
<tr class=\"Executed\">"; echo "
<tr class=\"Hold\">"; echo "
使用JS,您可以將所選狀態添加到父<table>
中:
$('select#lotstatus').on('change', function() {
$('table').attr('status', $(this).val());
});
然后,在CSS中,您需要為每種狀態設置所需的顏色:
table[status="Executed"] tr.Executed .statuscolor { color: red; }
table[status="Hold"] tr.Hold .statuscolor { color: green; }
table[status="Closed"] tr.Closed .statuscolor { color: yellow; }
也許您需要在表中添加一個“ id”,以避免與其他表發生沖突。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.