URL - кодирование (javascript) method = "GET" - PullRequest
1 голос
/ 21 января 2010

У меня есть форма с некоторыми полями ввода (6). Когда я нажимаю кнопку отправки «Я хотел бы отформатировать URL» таким образом:

/ ActionName input1 |? Input2 | вход3 | вход4 | данные 5 | * 1003 данные 6 *

и, возможно, для нулевых значений: / ActionName input1 |? Input2 || вход4 || * 1005 данных 6 *

и, возможно, отметка времени, когда пользователь нажимает кнопку отправки.

Может ли это быть сделано с помощью JavaScript.

Спасибо

Чад

Ответы [ 4 ]

1 голос
/ 21 января 2010

если вы используете любую библиотеку java-скриптов, такую ​​как jQuery, вы можете сериализовать форму, которая предоставляет данные в формате строки запроса. пример: см. здесь

1 голос
/ 21 января 2010

Это можно сделать с помощью javascript, но я не могу понять, почему вы этого хотите. Вам нужно будет использовать событие onsubmit формы, циклически проходить по элементам формы, добавляя каждое значение к строке URL-адреса в предложенном вами формате и затем устанавливая window.location к этой строке URL-адреса.

Для пользователей с отключенным JavaScript, форма будет по-прежнему отправляться в «правильном» порядке, поэтому я не могу понять, почему вы хотите изменить формат строки запроса.

0 голосов
/ 21 января 2010

Как насчет использования XMLHTMLRequest для выполнения вашего запроса.

Вы создаете свой URL-адрес в виде строки, используя javascript, а затем настраиваете XHR для отправки на этот URL-адрес, используя GET (синхронно или синхронно, по вашему выбору).

Таким образом, вы также избегаете наступать на пальцы формы onsubmit.

В качестве альтернативы простым обходным путем будет создание вашего URL-адреса в строке, а затем присвоение атрибуту формы action этой строки перед отправкой формы методом submit().

0 голосов
/ 21 января 2010

Даже если я не вижу причин, по которым вам это нужно :), вы можете использовать событие onSubmit для создания правильного URL и перенаправления на него.

...