PHP контактной формы перезаписать поля выдачи повторяющихся значений - PullRequest
0 голосов
/ 12 марта 2010

H Я использую контактную форму php из http://phpfmg.sourceforge.net/home.php. Я думал, что добавлю эффект onfocus, поэтому, когда я нажимаю в полях, значение исчезает автоматически.

Но когда я отправляю сообщение, если я не заполнил обязательные поля, я получаю это значения, которые снова появляются, как http://s647.photobucket.com/albums/uu199/judibluebottles/YETI%20images/?action=view&current=form_issue.jpg http://i647.photobucket.com/albums/uu199/judibluebottles/YETI%20images/form_issue.jpg?t=1268387405

<input type="text" class="text_box" onfocus="if(this.value=='Telephone')this.value='';" value="TelephoneTelephone" id="field_5" name="field_5">

Ответы [ 2 ]

0 голосов
/ 03 апреля 2010

Я бросил делать сложные контактные формы php, разве у кого-то есть чудо, способное сделать что угодно? Для Wordpress contactform 7 самый простой, с которым я столкнулся.

Было бы здорово, если бы кто-то сделал продвинутый плагин для pixie cms:)

0 голосов
/ 12 марта 2010

Вы захотите использовать обработчик onsubmit в форме, который делает то же самое, что и onfocus: очищает текст из поля, если это текст по умолчанию. Таким образом, поля будут пустыми при отправке.

Чтобы сделать это, я бы создал некоторую структуру, чтобы избежать дублирования кода. Полностью с манжеты:

var Placeholders = {
    "field_5": "Telephone",
    // ...and the other fields...
};

function clearFieldPlaceholder(field) {
    var placeholder;

    placeholder = Placeholders[field.name];
    if (placeholder && field.value == placeholder) {
        field.value = "";
    }
}

function formSubmit(form) {
    var index;

    for (index = 0; index < form.elements.length; ++index) {
        // You may want to filter here a bit, e.g., check if it's
        // a text field
        clearPlaceholder(form.elements[index]);
    }
}

onfocus для полей:

<input ... onfocus="clearPlaceholder(this);" ...>

onsubmit для формы:

<form ... onsubmit="formSubmit(this);" ...>
...