Magento – Magento2 admin panel, open an url in new tab using window.open

admin-panellinkmagento2

Below codes opens the link in same window, how can I change it to open it in new tab?

if ($canModify) {
            $data = [
                'label' => __('Login As Customer'),
                'class' => 'login login-button',
                'on_click' => 'window.open( \'' . $this->getInvalidateTokenUrl() .
                    '\')',
                'sort_order' => 70,
            ];
        }

edit:

below are not working:

'on_click' => 'window.open( \'' . $this->getInvalidateTokenUrl() .
                    '\',\'_blank\')',

and

'on_click' => 'window.open( \'' . $this->getInvalidateTokenUrl() .
                    '\')',
                'target' => '_blank',

Best Answer

You should add attribute target="_blank" to your element. Something like this I think would work:

if ($canModify) {
            $data = [
                'label' => __('Login As Customer'),
                'class' => 'login login-button',
                'on_click' => 'window.open( \'' . $this->getInvalidateTokenUrl() .
                    '\')',
                'sort_order' => 70,
                'target' => '_blank'  
            ];
        }

For example: <div class="login login-button" onclick="window.open('http://www.google.com')" target="_blank">Click me</div>.

Related Topic