簡體   English   中英

在AJAX成功的“新標簽”中打開鏈接-Javascript

[英]Open Link in New Tab on AJAX success - Javascript

調用成功方法后,我試圖在新選項卡中打開鏈接。

由於我正在為該項目工作,所以我無法共享代碼。 但我正在分享我的情況。

HTML部分:

<button id="news" onclick="getNews()">Get News</button>
<a href="#" id="newTabLink" target="_blank" ></a>

Javascript部分

function getNews(){
    $.ajax({
         url: "controllerName/actionMethod", 
         success: function(result){

                    //Assigning url to href
                    $('#newTabLink').href(result.url);

                    // Clicking the hyperlink
                    $('#newTabLink').click();
                   }
  });

}

我的頁面方案:

單擊“ 獲取新聞”按鈕時,如果存在任何新聞,它將從數據庫中獲取新聞。 否則,它將在同一屏幕上顯示一個彈出窗口,例如“ 未找到新聞 ”。

現在,如果有任何新聞存在,它將以ajax成功方法返回URL, 我想在新選項卡中不是在新窗口中 打開它

注意:我不想在ajax設置中使用async:false 因為它將停止頁面,直到響應來自服務器。

我試過的

我嘗試在頁面加載( 靜態 )上創建超鏈接 ,並且在ajax成功時在該鏈接中分配了href 分配href后,我將單擊該超鏈接。

我的問題:

它在新窗口中打開,而不是在新選項卡中打開。

我想在沒有async:false新選項卡中打開它,還請注意我不想在單擊按鈕並設置超時的第一時間打開新選項卡 這對於我的項目將變得很尷尬。

target =“ _ blank”在IE9中打開一個新窗口,而不是一個新選項卡可能正在檢查您的瀏覽器設置,target_blank通常這幾天會打開一個新選項卡。 IE的說明您需要使用target =“ _ blank”屬性來使鏈接在新窗口或選項卡中打開。 鏈接實際打開的位置取決於瀏覽器設置。 因此,如果選擇了“工具”>“ Internet選項”>“選項卡式瀏覽設置”>“始終在新選項卡中打開彈出窗口”,則target =“ _ blank”鏈接將在新選項卡中打開。 請注意,在大多數瀏覽器中,默認情況下,此類鏈接會在新窗口中打開。

您可以查看鏈接http://getbootstrap.com/javascript/#tabs

引導文檔。

$('#myTabs a[href="#profile"]').tab('show') // Select tab by name

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM