0

我试图在 onclick 操作后重定向用户,但以下代码中的用户 ID 始终保持不变,无论用户在表中选择。也许我在这里遗漏了一些东西......

<td>
  <?php if ($memberinfo['UserIsChecked'] == 1){ ?>
    <button class="btn btn-xs btn-icon btn-default"> <i class="fa fa-times"></i> </button>
  <?php } else { ?>
    <a href="#"><p onclick="go()">Approve/Refuse <?php echo($memberinfo['UserId']) ;?></p></a>
    <script>
      var userid='<?php echo $userid;?>';
      function go(){
        swal({
          title: 'Are you sure?',
          text: "You won't be able to revert this!",
          type: 'warning',
          showCancelButton: true,
          confirmButtonText: 'Validate user',
          cancelButtonText: 'Refuse request',
          confirmButtonClass: 'btn btn-success',
          cancelButtonClass: 'btn btn-danger m-l-10',
          buttonsStyling: false
        }).then(function () {
          swal(
            'User validated!',
            'The user has been notified.',
            'success',
          ).then(function(){
            window.location = 'scripts/process-validate-user.php?userid='+ userid +' ' ;
          })
        }, function (dismiss) {
          // dismiss can be 'cancel', 'overlay',
          // 'close', and 'timer'
          if (dismiss === 'cancel') {
            swal(
              'User refused',
              'The user has been notified.',
              'error'
            )
          }
        })
      }
    </script>
  <?php } ?>
</td>
4

2 回答 2

0

如果这些是表格行,那么您可以简单地添加一个隐藏<div><tr>如下所示:

<td>
<?php if ($memberinfo['UserIsChecked'] == 1){ ?>
    <button class="btn btn-xs btn-icon btn-default"> <i class="fa fa-times"></i> </button>
<?php } else { ?>
    <span style="display:none" class="user-id"><?php echo($memberinfo['UserId']) ;?></span>
    <a href="#"><p onclick="go()">Approve/Refuse <?php echo($memberinfo['UserId']) ;?></p></a>

然后,在 JavaScript 代码中,<span>通过 JavaScript 或 jQuery 相对于用户的点击获取此文本。

于 2017-09-04T21:01:57.177 回答
0

您是否遍历该表中的列或行?如果是这样,那么您可能会在全局范围内重新声明和重新初始化用户 ID 以及 go() 函数本身。

尝试将 x-userid="" 属性添加到绑定 go() 函数的锚标记。然后在 go 函数中会开始如下:

function go(event) { var userid = event.target.getAttribute('x-userid'); ... }

于 2017-09-04T20:54:27.267 回答