При нажатии: открыть всплывающее окно Div на другой странице - PullRequest
1 голос
/ 29 марта 2012

На page1.php у меня есть событие click, которое вызывает перенаправление пользователя на страницу page2.php. Это выглядит примерно так:

$("#someButton").click(function() {
    window.location = "page2.php";
});

И это прекрасно работает. Но я действительно хочу открыть скрытую блокировку пользовательского интерфейса <div> на странице 2. Пользователь уже может открыть этот <div> вручную, нажав другую кнопку на странице 2, которая выглядит примерно так:

$('#someOtherButton').click(function() {
   $("#pageContainer").block({message: $("#theDivIWant2See")});
});

Могу ли я сделать событие click из JavaScript на одной странице, вызвать JavaScript на другой? Или мне нужно будет добавить какой-нибудь HTML-разбор для передачи информации между страницами? (Я не ищу здесь раздаточный материал по JavaScript, просто стратегию, которая поможет мне двигаться вперед.)

Ответы [ 3 ]

2 голосов
/ 29 марта 2012

Когда вы перенаправляете с первой страницы, добавьте значение строки запроса в ваш URL.и на второй странице, используя язык страницы на стороне сервера, установите в скрытом поле и в событии готовности документа проверьте значение этого скрытого поля.Если значение ожидается, вызовите функцию JavaScript, чтобы показать всплывающее окно.

Что-то вроде этого

$("#someButton").click(function() {
    window.location = "page2.php?showpopup=yes";
});

и в page2.php установите его (простите за ошибки, яphp guy)

<input type='<?php $_GET["showpopup"] ?>' id='hdnShow' />

и в скрипте

$(function(){
  if($("#hdnShow").val()=="yes")
  {
    //Call here the method to show pop up
  }
});
1 голос
/ 29 марта 2012

Вы должны делать свои вещи, когда DOM для page2 готов. Для этого вы можете использовать функцию готовности jQuery.

$ (документ) .ready (function () { // положить код для показа вашего div здесь });

Надеюсь, это поможет.

0 голосов
/ 29 марта 2012

Не могли бы вы передать аргумент строки запроса или назначить файл cookie, который другая страница могла бы затем проверить при загрузке документа? Если значение существует, тогда представьте модальное диалоговое окно (например, jQuery UI Modal Popup)

http://jqueryui.com/demos/dialog/

...