Laravel/Ajax/SQL: 尝试在 null 或 not 时显示当前值

Laravel/Ajax/SQL: trying to show the current value on when null or not

下面是我的截图table。我的目标是 effective_start_datetime,如果其中有值,我希望它显示为状态 active,编辑时如果它是 null,则显示为 inactive。 (显示编辑点击的当前状态)

模型:(获取SQL数据)

$group_edit = HmsBbrGroup::find($group_id);

Table:

<select id="edit_effective_start_datetime" class="form-control w-100 edit_effective_start_datetime">
<option value="active">Active</option>
<option value="inactive">Inactive</option>
</select>

表格:(仅状态未显示)

Ajax:(点击编辑按钮时输出表单内容)

        $(document).on('click','.edit_group',function (e) {
            e.preventDefault();
            var g_id = $(this).val();
            console.log(g_id);
            $('#editGroupModal').modal('show');
            $.ajax({
                type: "GET",
                url: "/clinical/bbr-group-configuration-edit/"+g_id,
                success: function (response) {
                     console.log(response);
                    if(response.status == 404) {
                        $('#success_message').html("");
                        $('#success_message').addClass('alert alert-danger');
                        $('#success_message').text('response.message');
                    } else {
                        $('#edit_group_name').val(response.group_edit.group_name);
                        $('#edit_group_description').val(response.group_edit.group_description);
                        $('#edit_group_id').val(response.group_edit.group_id);

                        $('#edit_effective_start_datetime').val(response.group_edit.effective_start_datetime).change();
                        $('#edit_group_type_id').val(response.group_edit.group_type_id).change();
                    }
                    
                }
            });
        });

正如您从表格中看到的,我的 ajax 在 $('#edit_effective_start_datetime').val(response.group_edit.effective_start_datetime).change(); 中输出除了状态之外的内容 我正在尝试找出将 <option> 显示为 inactiveactive 如果 datetimenull 或不是

我尝试添加一个功能,但这不起作用:

                    $('#edit_effective_start_datetime').val(getgroupstatus(response.group_edit.edit_effective_start_datetime)).change();

function getgroupstatus(status) {
  var g_status = '';
  if (status === null) {
    g_status = 'inactive'
  } else {
    g_status = 'active'
  } 
  return g_status;
}

关于如何显示状态的任何 help/advice 都会有很大帮助,谢谢。

使用布尔值而不是字符串 - 您的代码会更简单

<select id="edit_effective_start_datetime">
    <option value=0>Inactive</option>
    <option value=1>Active</option>
<select>

$("#edit_effective_start_datetime").val(response.group_edit.effective_start_datetime === null ? 0 : 1);

你可以使用道具

    var effective_start_datetime=response.group_edit.edit_effective_start_datetime?
                                'active':
                                'inactive';

    $('#edit_effective_start_datetime option[value='+effective_start_datetime+']').prop("selected",true);