2013-04-15 3 views
1

window.open("index.php"); не открывает новую страницу в том же вкладке , он открывает ее в новой вкладке .window.open (URL) не открывая новую страницу в той же вкладке

Я также попробовал window.open("index.php",'_self'), который вообще не открывает вкладку.

Вот мой код:

$.ajax({ 
    url: "login.php", 
    type: 'POST', 
    data : "username="+name+"&password="+pwd , 
    datatype :"text", 
    async: false, 
    cache: true, 
    timeout: 30000, 
    error: function() { 
     return true; 
    }, 
    success: function(msg) {       

     if(msg == "Validated") 
     { 
      alert(msg); 
      window.open("index.php"); 
     } 
     if(msg=="Incorrect password") 
     { 
      alert(msg); 
      location.reload();       
     }  
    } 
}); 
+2

В этом весь смысл 'window.open()' - открыть ** новое окно **. Если вы хотите обновить текущую вкладку, просто установите 'window.location.href' в свой URL. – Pointy

+0

Я пробовал это ..... window.location.href для somereason не работает для меня ..... http: //stackoverflow.com/questions/16002938/go-to-a-new-page-using -only-jquery-and-not-java-script –

+0

Установка 'window.location.href' нового значения работает для всех. – Pointy

ответ

5

Вместо window.open вы должны использовать window.location = "http://...."

+0

не удалось отладить, почему window.location = url не работает ..... также попробовал window.location.href ..... и с помощью браузера google chrome –

+0

Вы должны добавить «/» к своему URL-адресу, чтобы чтобы сделать его относительным, следующим образом: 'window.location =" /index.php ";' – Kenneth

1

window.location функция/свойство вы должны смотреть.

2

Функция window.open открывает окно окно (или вкладку). window.location изменяет адрес текущий tab.

0

window.open откроется на новой вкладке, если действие синхронно и вызывается пользователем. Если вы удалите async: false из параметров ajax (и этот метод вызывается пользователем, например, нажав кнопку), то вместо новой вкладки откроется новое окно. Для простого навигационного набора window.location.href

0

Насколько я знаю, window.location этого не делает. Правильный способ сделать это:

document.location = 'url-you-want-to-open.ext'; 

Лучшая вещь либо включать в себя полный путь (если он находится на другом домене) или абсолютный путь, если он находится на том же домене. Используйте только относительный путь, если целевой документ находится в одной папке.

Чтобы добавить к этому:

window = говорит о браузере и его вкладки

document = говорит с текущим документом, который загружается в/вкладке браузера.

+0

'window.location' является правильным и кросс-платформенным,' document.location' поддерживается большинством браузеров, но не гарантируется. В браузерах, поддерживающих 'document.location', они имеют одинаковые функциональные возможности. – JaredMcAteer

Смежные вопросы