gpt4 book ai didi

javascript - 如何隐藏或显示按钮取决于可点击的单选按钮

转载 作者:行者123 更新时间:2023-11-30 14:23:43 25 4
gpt4 key购买 nike

我刚刚创建了 4 个按钮(添加、编辑、删除、取消)和一个包含从 ajax 接收到的数据的表格。

每一行包含一个 radio (名称:myRadio)。

单击单选按钮时,按钮应根据数据字段(名称:状态)值更改其状态(隐藏或显示)。需要您的帮助。

$(document).ready(function() {
$('data-field:idxRadio[name=myRadio]').change(function(row, value, index) {
if (row.status === 'working') {
$("#addBtn").show();
$("#delBtn").hide();
} else if (row.status === 'finished') {
$("#delBtn").show();
$("#addBtn").hide();
} else {}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="card-body">
<div id="toolbar">
<button type="button" id="addBtn" class="btn btn-sm btn-success" onclick="add()">Add</button>
<button type="button" id="editBtn" class="btn btn-sm btn-primary" onclick="edit()">Edit</button>
<button type="button" id="delBtn" class="btn btn-sm btn-secondary" onclick="del()">Delete</button>
<button type="button" id="canBtn" class="btn btn-sm btn-secondary" onclick="buttonSelection()">Cancel</button>
</div>

<table id="table">
<tr>
<th data-field="idxRadio" name="myRadio" data-valign="middle" data-align="center" data-radio="true"></th>
<th data-field="id" data-align="center" data-valign="middle" data-sortable="true" data-cell-style="cellStyle">No</th>
<th data-field="keyPriority" data-align="center" data-valign="middle" data-sortable="true" data-formatter="linkFormat" data-cell-style="cellStyle">priority</th>
<th data-field="endTime" data-align="center" data-valign="middle" data-sortable="true" data-formatter="timeFormat" data-cell-style="cellStyle">time</th>
<th data-field="title" data-align="center" data-valign="middle" data-sortable="true" data-cell-style="cellStyle">title</th>
<th data-field="status" data-align="center" data-valign="middle" data-sortable="true" data-cell-style="cellStyle">status</th>
</tr>
</thead>
</table>
</div>

最佳答案

a table with received data from ajax.

然后你需要使用事件委托(delegate) on() 因为行是动态添加到 DOM 的,所以你需要在点击时获取父行 tr使用 .closest() 的单选按钮,然后从最后一列获取状态(尝试给它一个类似 status 的类以简化查找选择器):

$(document).ready(function() {

$('#table tbody').on('change', ':radio', function(value, index) {
var row = $(this).closest('tr');
var status = row.find('.status').text().trim();

switch (status) {
case 'working':
$("#addBtn").show();
$("#delBtn").hide();
break;
case 'finished':
$("#delBtn").show();
$("#addBtn").hide();
break;
default:
$('#toolbar button').show()
}
});

});

关于javascript - 如何隐藏或显示按钮取决于可点击的单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52292241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com