【问题标题】:Duplicate users(entries) should not be add in table重复的用户(条目)不应添加到表中
【发布时间】:2022-01-14 01:33:27
【问题描述】:

我遇到了一个问题。我有一个下拉列表,其中包含从数据库中获取的用户列表。当我从下拉列表中选择一个用户时,它会附加在下表中,当我再次选择同一用户时,它会再次作为新行附加在下表中。所以我想停止在表中重复相同的用户。

这是我的查看代码

<div class="form-group col-md-4 " style="display:none" id="user-container">
            <label>User</label>
            <select id="users" class="form-control" disabled="disabled">
              <option value="">Select User</option>
            </select>
            <p class="validate-error"><span id="users_error"></span></p>
          </div>

这是我的 JavaScript 代码

PostMyData(obj, '/Admin/Meetings/GetUserGroupUsers', (res) => {
   
  if (res.Code === 0 || res.Code === -1) {
    alert(res.Message);
  }
  if (res.Code === 1) {
 
    $('#users').html('');
 
    $('#users').append('<option value="">Select User</option>');
 
    res.Data.map(item => {
      $('#users').append(`<option value="${item.UserId}">${item.FirstName} ${item.LastName}</option>`);
    });
 
    $('#users').prop('disabled', false);
  }

【问题讨论】:

  • 桌子在哪里?

标签: javascript jquery asp.net asp.net-mvc asp.net-mvc-4


【解决方案1】:

我不知道在表中复制相同的用户是什么意思,如果您的意思是要防止在下拉列表中复制用户,您可以尝试此代码,如果不是,请提供有关您正在处理的表的更多详细信息。

 ...
 const usersList=  $('#users');
 res.Data.forEach(item => {
  if(usersList.find(`option[value=${item.UserId}]`).length > 0){
    return ; // do nothing
  }
  usersList.append(`<option value="${item.UserId}">${item.FirstName} ${item.LastName}</option>`);
});
...

【讨论】:

    【解决方案2】:

    我认为动态提供 id 可以完成这项工作。假设您根据 id 值提供 id,那么您可以轻松找到是否存在相同的 id。

    PostMyData(obj, '/Admin/Meetings/GetUserGroupUsers', (res) => {
       users = document.getElementById("users");
        if (res.Code === 0 || res.Code === -1) {
          alert(res.Message);
        }
        if (res.Code === 1) {
       
          users.html('');
       
          users.append('<option value="">Select User</option>');
       
          res.Data.map(item => {
            if(!users.querySelector(item.UserId))
            users.append(`<option value="${item.UserId}" id="${item.UserId}">${item.FirstName} ${item.LastName}</option>`);
          });
       
          users.prop('disabled', false);
        }

    【讨论】:

      猜你喜欢
      • 2022-10-08
      • 1970-01-01
      • 2020-08-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-28
      • 2012-05-21
      • 1970-01-01
      相关资源
      最近更新 更多