Так вот ситуация. Я использую стороннюю службу подписи цифровых документов под названием PandaDoc в своем мобильном приложении, которая построена на PhoneGap/Cordova, и я не могу изменить какие-либо поля ввода, текстового поля при попытке сделать это с помощью мобильного приложения на iPhone (еще не протестировал Android).
Вот некоторые вещи, которые я заметил об этом:
1) При просмотре онлайн в Chrome (на моем ноутбуке) или на моем телефоне в браузере Chrome все работает нормально.
2) Единственными элементами формы, которые не работают на мобильных устройствах, являются входные (type = text). Эти флажки работают, выпадающие меню и т.д....
3) Я мало знаю об Angular.js, но могу сказать, что это приложение стороннего разработчика было построено на нем. Когда я проверяю и сравниваю мобильную версию или веб-версию, я заметил, что в мобильной версии поля ввода имеют следующие две директивы:
ng-pristine and ng-touched
Из того, что я могу сказать, исследуя их, они кажутся взаимоисключающими, поэтому не уверены, как это повлияет на вещи. Также в веб-версии было:
ng-dirty and ng-valid-parse
оба из которых у мобильной версии не были.
Я знаю, что было бы лучше, если бы я мог разместить здесь код, но я не знаю, с чего начать. В моем приложении есть простой скрипт для вставки, который помещает PandaDoc в iFrame.
Если вы хотите увидеть мобильную тестовую версию этого приложения, вы можете просмотреть его по адресу http://dev.velexo.com/m2. У меня есть тестовый пользователь с именем пользователя "mobile2", и пароль "pass". К сожалению, нет простого способа отправить версию приложения для iphone, и именно в этом проблема.
О, также, когда вы заходите в приложение, нажмите кнопку "Информация о W9", а затем кнопку "Enter Your W9", вот что вызывает pandadoc
Также должен был упомянуть, что я использую JQuery Mobile в приложении.
Любые советы/рекомендации приветствуются, даже если это просто догадка.
просто просматривая мои старые вопросы здесь. Ответ на фактический вопрос, который я задал, заключается в том, что вы не можете ничего изменить в iFrame из родительского фрейма, если оба домена и порт не совпадают из-за ограничений в междоменной политике.
Об этом я не знаю.
Решение моей конкретной проблемы состояло в том, чтобы полностью избавиться от PandaDoc, потому что он просто не предназначен для использования на мобильном устройстве. В конце я написал свой собственный javascript для создания подписи и передачи в бэкэнд, где я использовал библиотеку генерации php pdf для создания окончательного документа.