我想更改包含在表行的td中的输入文本/文本区域的背景色,数据来自数据库,每一行都包含复选框,因此当单击复选框时,输入文本的背景色将改变。
$('#myTable .nrml').click(function() {
var currentRow = $(this).closest("tr");
var col4 = currentRow.find("td:eq(1)").html();
alert(col4);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table border='1' id="myTable">
<tr>
<th>Parameter</th>
<th>Result</th>
<th>Normal</th>
<th>Abornaml Values</th>
<th>Normal Values</th>
<th>Critical Values</th>
</tr>
<tr>
<td>Glucose</td>
<td><input class="txtbox" type="text"></td>
<td><input type="checkbox" class="nrml"></td>
<td><input type="checkbox" class="abnrml"></td>
<td>60-80</td>
<td>110-120</td>
</tr>
<tr>
<td>Lipid</td>
<td><input class="txtbox" type="text"></td>
<td><input type="checkbox" class="nrml"></td>
<td><input type="checkbox" class="abnrml"></td>
<td>55-90</td>
<td>100-180</td>
</tr>
<tr>
<td>Keratine</td>
<td><input class="txtbox" type="text"></td>
<td><input type="checkbox" class="nrml"></td>
<td><input type="checkbox" class="abnrml"></td>
<td>10-15</td>
<td>16-20</td>
</tr>
<tr>
<td>Pressusre</td>
<td><textarea></textarea></td>
<td><input type="checkbox" class="nrml"></td>
<td><input type="checkbox" class="abnrml"></td>
<td>10-15</td>
<td>16-20</td>
</tr>
</table>
为此行吗?
使用.toggleClass()方法来应用包含css作为输入的类。
请注意此处会弹出的一些答案,它们很脆弱(更改html可能会破坏您的代码)。
您只需要更新脚本,当您选中相应的复选框时,输入字段的背景颜色会改变,但是输入字段必须具有值,否则颜色不会改变
尝试此代码将解决您的问题