Автозаполнение полей
Всем привет! Помогите пожалуйста.
В общем нужно чтобы автоматически выбирало страну и заполняло поля вот в ЭТОЙ форме, НО дело в том что коды этих полей меняются :( Когда коды не менялись, использовал вот этот скрипт:
// ==UserScript==
// @name Limon
// @namespace Limon
// @description This baby will autofill the form fields in the redeem page!
// @include *lockerz.com*
// @include *ptzplace.lockerz.com*
// @version 1.0
// @author Limon
// ==/UserScript==
var country = "Russia";
var countryCode = "RU";
var phoneWhole = "телефон";
var firstName = "имя";
var lastName = "фамилия";
var address1 = "улица дом/кв.";
var address2 = "";
var city = "город";
var state = "RU";
var zip = "индекс";
document.getElementById("state").value = state;
document.getElementById("statesClicker").getElementsByTagName("SPAN")[0].innerHTML = state;
document.getElementById("stateDetails").value = state;
document.getElementById("country").value = country;
document.getElementById("countryClicker").getElementsByTagName("SPAN")[0].innerHTML = country;
document.getElementById("countryDetails").value = country;
window.location= "javascript: manipulateForm('"+countryCode+"');";
document.getElementById("phoneWhole").value = phoneWhole;
document.getElementById("firstName").value = firstName;
document.getElementById("lastName").value = lastName;
document.getElementById("address1").value = address1;
document.getElementById("address2").value = address2;
document.getElementById("city").value = city;
document.getElementById("state").value = state;
document.getElementById("zip").value = zip;
document.getElementById('recaptcha_response_field' ).focus();
Может кто знает еще способ, помогите, буду очень благодарен |
ой, саму ссылку на форму заполнения забыл написать :) ВОТ
|
К каждому input привязан label:
<label for="input-id">text</label> можно вытаскивать текст из label и находить соответствующий input по id, взятому из атрибута for. |
Извини конечно, но я в js не очень разбираюсь, не мог бы разъяснить чуток :)
|
а лучше пример привести или, если не сложно, сделать полность ;)
|
Тут особых знаний не нужно, находишь форму с идентификатором shippingForm, затем получаешь список всех <label> внутри этой формы, проходишь по ним в цикле, доставая из атрибута for (свойство htmlFor) идентификатор связанного <input>, а что подставлять в value для <input>, определяешь по значению label.innerHTML.
За готовым скриптом обращайтесь в раздел работа. |
так, ну вот нашел, допустим имя:
<label id="lbFirstName" for="fn_11121">FIRST NAME<span
class="mandatory">*</span></label>
<input value="ИМЯ" id="fn_11121"
name="fn_11121" class="shipBox" maxlength="20" autocomplete="off"
type="text">
fn_11121 - вот это значение как раз таки меняется, ты может не понял меня или я тебя не понял :D |
for="fn_11121" и id="fn_11121" не видите что ли?
|
вижу, и что? эти значения каждый раз меняются! еще раз сказать?
|
Текст метки "FIRST NAME" не меняется, и метка однозначно связана с полем ввода (for → id), еще раз объяснить?
|
хм... и что тогда получается так?
var firstName = "ИМЯ";
document.getElementById("FIRST NAME").value = firstName;
|
Нет.
Видимо у вас нулевой уровень знаний в JavaScript. На этом сайте есть весь необходимый материал для изучения: http://javascript.ru/doctree После прочтения раздела «DOM: работа с HTML-страницей» у вас должно получится решить эту задачу. |
да, знаний нет. Поэтому и прошу помочь, сделайте одно хотя бы, пожалуйста.
var firstName = "ИМЯ"; document.getElementsByName("FIRST NAME").value = firstName; Снова не правильно? |
Цитата:
Цитата:
Цитата:
|
Я уверен что Вы знаете JS как свои пять пальцев!
Ну напишите пожалуйста один пример, ПОЖАЛУЙСТА ПРОШУ! |
<label id="lbFirstName" for="fn_11121">FIRST NAME<span
class="mandatory">*</span></label>
<label id="lbLastName" for="ln_11121">LAST NAME<span
class="mandatory">*</span></label>
<label id="lbAddress1" for="a1_11121">ADDRESS 1<span
class="mandatory">*</span></label>
<label id="lbAddress2" for="a2_11121">ADDRESS 2</label>
<label id="lbCity" for="cy_11121">CITY<span
class="mandatory">*</span></label>
<label id="lbState" for="s_11121">STATE /
PROVINCE<span class="mandatory">*</span></label>
<label id="lbZip" for="z_11121">POSTAL CODE<span
class="mandatory">*</span></label>
<label id="lbPhone" for="_phoneOne">PHONE<span
class="mandatory">*</span></label>
<label id="lbCountry" for="c_11121">COUNTRY<span
class="mandatory">*</span></label>
<input value="имя" id="fn_11121"
name="fn_11121" class="shipBox" maxlength="20" autocomplete="off"
type="text">
<input value="фамилия" id="ln_11121"
name="ln_11121" class="shipBox" maxlength="20" autocomplete="off"
type="text">
<input value="адрес1" id="a1_11121"
name="a1_11121" class="shipBox" maxlength="30" autocomplete="off"
type="text">
<input value="адрес2'"
id="a2_11121" name="a2_11121" class="shipBox" maxlength="30"
autocomplete="off" type="text">
<input value="Novaja Malykla" id="cy_11121"
name="cy_11121" class="shipBox" maxlength="30" autocomplete="off"
type="text">
<input value="RU" style="visibility: visible;"
id="s_11121" name="s_11121" class="shipBox" maxlength="20"
autocomplete="off" type="text">
<input value="индекс" id="z_11121"
name="z_11121" class="shipBox" maxlength="10" autocomplete="off"
type="text">
<input value="телефон" style="display:
none;" id="_phoneOne" name="_phoneOne" class="shipBox" maxlength="3"
autocomplete="off" type="text">
<input value="телефон" style="display:
none;" id="_phoneTwo" name="_phoneTwo" class="shipBox" maxlength="3"
autocomplete="off" type="text">
<input value="телефон" style="display:
none;" id="_phoneThree" name="_phoneThree" class="shipBox" maxlength="4"
autocomplete="off" type="text">
<input value="телефон" style="display:
block;" id="_phoneWhole" name="_phoneWhole" class="shipBox"
maxlength="20" autocomplete="off" type="text">
<input value="RU" name="c_11121" id="c_11121"
type="hidden">
<input value="" name="t_11121" id="t_11121"
type="hidden">
<input value="Russia" name="_countryDetails"
id="_countryDetails" type="hidden">
<input value="" name="_stateDetails"
id="_stateDetails" type="hidden">
|
сделай проще id у label не меняеться то
var firstName = "имя";
id = document.getElementById('lbFirstName').attributes["for"].value;
document.getElementById(id).value=firstName;
и далее в томже духе |
| Часовой пояс GMT +3, время: 16:00. |