向用户编辑页面上的用户角色选择添加Java触发器

时间:2020-02-06 作者:apalin

我希望在WP admin user edit上选择特定的用户角色时触发一条消息。php页面。(这可能是一个隐藏的div,在从下拉列表中选择特定角色后,该div将被取消隐藏)。

我在#5中看到了可行的解决方案here 但我不知道如何在用户编辑页面的角色选择下拉列表中插入on change触发器。

如有任何建议/建议,将不胜感激。

1 个回复
最合适的回答,由SO网友:Antti Koskinen 整理而成

您可以使用jQuery或普通javascript向角色添加事件侦听器select 要素E、 g。

jQuery(document).on(\'ready\', function(){

    jQuery(\'select#role\').on(\'change\', function(){
      // some if statement here
      alert(\'Role changed\');
    });

  });
要将此添加到您的管理员,您可以使用admin_enqueue_scriptsadmin_footer 挂钩。

要将脚本文件排队,

function my_admin_enqueue_scripts( $hook_suffix ) {
  if ( \'user-edit.php\' === $hook_suffix || \'user-new.php\' === $hook_suffix ) {
    wp_enqueue_script( $handle, $src = false, $deps = array(), $ver = false, $in_footer = false );
  }
} 
add_action(\'admin_enqueue_scripts\', \'my_admin_enqueue_scripts\');
要在管理页脚中内联脚本,

function my_admin_enqueue_scripts() {
  global $pagenow;
  if ( \'user-edit.php\' !== $pagenow && \'user-new.php\' !== $pagenow ) {
    return;
  }
  ?>
  <script>
  jQuery(document).on(\'ready\', function(){

    jQuery(\'select#role\').on(\'change\', function(){
      alert(\'Role changed\');
    });

  });
  </script>
  <?php
}
add_action(\'admin_footer\', \'my_admin_enqueue_scripts\');
如果要显示弹出窗口,则在选择某个角色时,可以将弹出窗口html添加到管理员页脚,并让更改操作使其可见。如果需要弹出窗口的样式,请使用wp_enqueue_style() 在里面admin_enqueue_scripts.

P、 我添加了新用户。php检查是一个额外的示例。

相关推荐

如何从JavaScript访问自定义POST元数据

我已经为我的WooCommerce产品创建了自定义元字段。然而,我使用的插件(高级Woo搜索)是用JavaScript编写的,我需要访问PHP变量。我用过wp_localize_script() 这样做。然而,在前端,没有显示我的数据。以下是我的PHP代码: function js_enqueue_scripts() { global $post; $text2 = get_post_meta( $post->ID, \'_load_speed_field\',