Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
Вобщем-то предложение следущее. Добавить возможность сохранять номер формы с редактора действий в переменную, чтобы потом использавать этот номер в действиях с элементоами. Часто бывает, что формы разные (отличаются именем или id), но элементы на них есть одинаковые. Поэтому удобно было бы сохранить номер нужной формы и уже работать с полями именно в ней
ТС хочет шаманить в рамках одной формы, так как в варианте "-1" будет большой разброс, ТС видит решение задачи таким образом:
- Определяем признак, по которому точно ясно что нам нужна именно эта форма
- Ищем нужный элемент по этому признаку
- Определяем в какой форме находится наш элемент относительно других форм
- Сохраняем порядковый номер нашей формы
Далее получается таким образом ТС имеет возможность уже подставлять ранее найденный порядковый номер формы, и долбить уже в рамках конкретной формы, а не всей страницы (-1).
Лично я много раз сталкивался с необходимостью такой фичи, также как и фичи вложенной работы с формами (нашли один элемент, далее ищем в нём, далее вглубь ниже), и считаю что данная фича весьма полезна. Использование этой фичи могло бы выглядеть так:
- Ищем как и сейчас нужный эллемент
- Делаем GET|form_num
- Также думаю нужен вариант form_doc для получения порядкового номера документа в котором форма находится
Затем я иду по списку и удалять те формы, которые вы не хотели бы, как Facebook, как кнопки, формы входа, или подписаться формы с регулярным выражением.
Код:
"pluginButtonLabel">Like.*|value="Login"|"lang_dropdown_wrap"|Join Now|name="formulaire"|aweber\.com|icontact\.com|custom_aweber_ad_tracking|switchtheme|straight to your inbox|Get Instant Access|value="Download|We never send spam|Newsletter|id="thankyou_url"|OptimizePress/images/optbuttons/|Make payments with PayPal|Add To Cart|paypalobjects|name="inf_custom_OptInMethod|Give me FREE|value="Give me my|value="Sign Up"|name="Contact0FirstName"|contactsave|value="Get Instant Access"|id="search-block-form"|value="LOG IN"|action="/plugins/like/connect"|value="INSTANT ACCESS"|<input\ value="Search"\ type="submit">.*|http://www\.aweber\.com/scripts/addlead\.pl".*|id="user-login.*|loginform.*|Sign\ in.*|Sign\ up.*|subscribe_form.*|pro-login.*|addmember\.php|commentform.*|comment-form.*|feedburner\.google.*|form-login.*|"search"|"Search"|facebook\.com|Join now|FREE|value="search"|Register for this site|facebook\.com|getresponse\.com|name="subscribe"|listname|www\.eharmony\.com|name="signup"|MailPressFormEmail|clickbank.net|wp-login.php|id="GRSubscribeForm"|Password:|subscriberProfile|name="successUrl"|You can unsubscribe at any|newsletter-signup|google_appliance_search_form|name="double_optin"|Sign Up For Email|signInForm|plugins/like/connect|squeezepage|"lang_dropdown_wrap"|Opt-In|1shoppingcart|id="SignUp"|value="INSTANT ACCESS"|Get Started Now|free video|searchsubmit|Gracias\.htm|value="Lead_Web_Form"|input name="ARThankyouURL"|SubscribeForm|infusionsoft\.com/app/form|sign_up|leadPagesIsValid|Add to Cart|poll|We NEVER trade|id="rememberme"|PAYMENT|Payment| information will never be shared|value="register"|Search|Friends|download|awf_field|Get Instant Access|Subscribe
Если я получаю такую форму, которая не является матч плохой, я поставил Innerhtml тега тела в форму и заполнить его дюйма Таким образом, вы только иметь одну форму на странице и так как вы находитесь на домене, любая представить кнопка будет работать.
Ну, смотря что считать трудным Как по мне, то проще найти форму, скажем, по id и сохранить ее номер в переменную, чем делать пост запрос, потом перебирать список со всеми формами...
Наведу конкретный пример. Делаю регистрацию на одном движке. Перехожу на страницу на которой есть 2 формы - для авторизации и для регистрации. Мне нужно заполнять поля только во второй. Все бы ничего, но бывают обязательные поля, которые идентичны полям на форме авторизации (логин и пароль). Выходит что эти поля надо заполнять в обеих формах (так как мы не знаем конкретно номер формы регистрации), если форм 3 - то и на 3-х формах, чтобы точно быть уверенным, что заполнятся поля у форме регистрации. В результате нарастает штук 5 блоков с логином и штук 5 с паролем.
Если же мы сможем сохранять номер формы в переменную, то всё становится намного проще. Ищем форму по id, сохраняем в переменную и потом используем ее при заполнении полей.
Трюк подходит Но хотелось бы удобства. Мне сейчас проще накидать лишних блоков, выпарсивать все формы. Хотя это может быть дело времени - нужно 1 раз сесть и написать.
В любом случае фича полезная была бы.
Затем я иду по списку и удалять те формы, которые вы не хотели бы, как Facebook, как кнопки, формы входа, или подписаться формы с регулярным выражением.
Код:
"pluginButtonLabel">Like.*|value="Login"|"lang_dropdown_wrap"|Join Now|name="formulaire"|aweber\.com|icontact\.com|custom_aweber_ad_tracking|switchtheme|straight to your inbox|Get Instant Access|value="Download|We never send spam|Newsletter|id="thankyou_url"|OptimizePress/images/optbuttons/|Make payments with PayPal|Add To Cart|paypalobjects|name="inf_custom_OptInMethod|Give me FREE|value="Give me my|value="Sign Up"|name="Contact0FirstName"|contactsave|value="Get Instant Access"|id="search-block-form"|value="LOG IN"|action="/plugins/like/connect"|value="INSTANT ACCESS"|<input\ value="Search"\ type="submit">.*|http://www\.aweber\.com/scripts/addlead\.pl".*|id="user-login.*|loginform.*|Sign\ in.*|Sign\ up.*|subscribe_form.*|pro-login.*|addmember\.php|commentform.*|comment-form.*|feedburner\.google.*|form-login.*|"search"|"Search"|facebook\.com|Join now|FREE|value="search"|Register for this site|facebook\.com|getresponse\.com|name="subscribe"|listname|www\.eharmony\.com|name="signup"|MailPressFormEmail|clickbank.net|wp-login.php|id="GRSubscribeForm"|Password:|subscriberProfile|name="successUrl"|You can unsubscribe at any|newsletter-signup|google_appliance_search_form|name="double_optin"|Sign Up For Email|signInForm|plugins/like/connect|squeezepage|"lang_dropdown_wrap"|Opt-In|1shoppingcart|id="SignUp"|value="INSTANT ACCESS"|Get Started Now|free video|searchsubmit|Gracias\.htm|value="Lead_Web_Form"|input name="ARThankyouURL"|SubscribeForm|infusionsoft\.com/app/form|sign_up|leadPagesIsValid|Add to Cart|poll|We NEVER trade|id="rememberme"|PAYMENT|Payment| information will never be shared|value="register"|Search|Friends|download|awf_field|Get Instant Access|Subscribe
Если я получаю такую форму, которая не является матч плохой, я поставил Innerhtml тега тела в форму и заполнить его дюйма Таким образом, вы только иметь одну форму на странице и так как вы находитесь на домене, любая представить кнопка будет работать.
I'm tried your method and I want to say that it's excellent!!
I search my form with some id in a page source and then replace a page's body with html of this form
So, my regexp is the next
Код:
<form.*(form_auth|forum_auth)[\w\W]*?</form>
This is a simple regex, but I wrote it about one hour