2013-06-03 2 views
0

У меня есть большое приложение, которое часто использует iframes. Он задает много переменных на главной странице, а затем ссылки iframe/изменяют их похожи наИсходный доступ к переменной JavaScript для iframe

parent.mode = 'save' 

Теперь это было написано некоторое время назад и отлично работают в IE, но в современных браузерах, как хром это ошибка во всем место, отлаживая его до родительских вызовов.

Мне интересно, есть ли новый кросс-браузер безопасный способ принудительного доступа к родительским переменным доступа к приложениям.

Я бы предпочел не переписывать все приложение и не нарушать работу IE, поскольку большинство пользователей - пользователи IE.

+3

Я знаю, что доступ к переменной «parent.» и запись в Chrome работают. Вы уверены, что ошибки не из другого источника? –

+0

Полная строка: 'parent.Mode.value = Mode;' И parent.mode - это скрытое поле формы, которое существует –

+0

Javascript чувствителен к регистру. 'parent.Mode' и' parent.mode' означают разные вещи. Кроме того, есть ли в документе элемент, '' '' '' mode'? Если это так, возможно, в глобальной области что-то переписывает. –

ответ

0

ok Я разработал его, тег ввода родителя имел имя = «бла», но нет, работает, то есть, но в хром мне нужен идентификатор.

<input type="hidden" name="nuMode" value="New" /> 

стал

<input type="hidden" name="nuMode" id="nuMode" value="New" /> 

Спасибо за указатели, как только я понял, родитель был хорошо, я пошел искать глубже.

+0

На боковой ноте эти поля НЕ в форме. Кажется, они только устанавливают переменные javascript. Разработчик говорит мне, что есть причина, по которой это было сделано, но не может вспомнить, почему. Я просто изменил бы их на 'nuMode = 'New';' но это может сломать что-то. –

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