Запустить событие щелчка в родительском окне из всплывающего окна - PullRequest
3 голосов
/ 29 сентября 2010

Я могу успешно запустить событие нажатия кнопки в родительском окне из всплывающего окна в FF и Chrome ... однако в IE ничего не происходит.Есть идеи?

window.opener.document.getElementById(Client ID Of Button).click();

Ответы [ 5 ]

1 голос
/ 06 августа 2011
window.opener.document.getElementById(Client ID Of Button).click();

Из приведенного выше кода просто удалите «окно».и попробуй еще раз.Это работает для меня в IE.

Исправлено: opener.document.getElementById(Client ID Of Button).click();

1 голос
/ 29 сентября 2010

Стандартный ответ в обычном коде с графическим интерфейсом состоит в том, что если у вас есть событие .click, вызывающее именованный метод, и весь ваш реальный код внутри этого метода, то гораздо проще иметь внешний объектвызовите этот именованный метод, чем пытайтесь запустить событие click.

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

1 голос
/ 29 сентября 2010

это работает в FF $(parent.document.getElementById('clientId')).trigger('click');

1 голос
/ 29 сентября 2010

Я думаю, что в IE вы должны написать: "self.opener"

Полагаю, проблема в функции window.open, которая открыла это всплывающее окно, убедитесь, что в имени страницы и имени окна нет пробелов.

0 голосов
/ 29 сентября 2010

Я думаю, что это сработает, но обратите внимание: elementID должен быть в кавычках, а dom указывает, что событие находится в onClick ()

window.opener.document.getElementById ("Клиентский идентификатор кнопки"). OnClick ();

Вы также можете использовать self.opener

или window.parent или self.parent

Надеюсь, эти идеи помогут

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...