Как читать параметры запроса поста, используя JavaScript - PullRequest
71 голосов
/ 11 сентября 2009

Я пытаюсь прочитать параметры запроса поста из моего HTML. Я могу прочитать параметры запроса get, используя следующий код в javascript.

$wnd.location.search

Но это не работает для пост-запроса. Может кто-нибудь сказать мне, как прочитать значения параметров пост-запроса в моем html, используя JavaScript.

Ответы [ 16 ]

0 голосов
/ 20 октября 2017
function getParameterByName(name, url) {
            if (!url) url = window.location.href;
            name = name.replace(/[\[\]]/g, "\\$&");
            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"),
                results = regex.exec(url);
            if (!results) return null;
            if (!results[2]) return '';
            return decodeURIComponent(results[2].replace(/\+/g, " "));
        }
var formObj = document.getElementById("pageID");
formObj.response_order_id.value = getParameterByName("name");
0 голосов
/ 22 июля 2017

Вы можете 'json_encode', чтобы сначала закодировать ваши переменные поста через PHP. Затем создайте объект JS (массив) из почтовых переменных, закодированных в JSON. Затем используйте цикл JavaScript для управления этими переменными ... Как - в этом примере ниже - заполнить форму HTML:

<script>

    <?php $post_vars_json_encode =  json_encode($this->input->post()); ?>

    // SET POST VALUES OBJECT/ARRAY
    var post_value_Arr = <?php echo $post_vars_json_encode; ?>;// creates a JS object with your post variables
    console.log(post_value_Arr);

    // POPULATE FIELDS BASED ON POST VALUES
    for(var key in post_value_Arr){// Loop post variables array

        if(document.getElementById(key)){// Field Exists
            console.log("found post_value_Arr key form field = "+key);
            document.getElementById(key).value = post_value_Arr[key];
        }
    }


</script>
0 голосов
/ 03 августа 2016

Мы можем собрать параметры формы, отправленные с помощью POST, используя концепцию serialize .

Попробуйте это:

$('form').serialize(); 

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

0 голосов
/ 29 июля 2016
<head><script>var xxx = ${params.xxx}</script></head>

Используя выражение EL $ {param.xxx} в <head>, чтобы получить параметры из метода post, и убедитесь, что файл js включен после <head>, чтобы вы могли обрабатывать параметры типа 'xxx' прямо в JS файл.

0 голосов
/ 05 декабря 2013

Переменные POST доступны только для браузера, если тот же браузер отправил их в первую очередь. Если другая форма веб-сайта отправляется через POST на другой URL-адрес, браузер не увидит входящие данные POST.

САЙТ A: отправка формы на внешний URL (сайт B) с использованием POST САЙТ B: получит посетителя, но только с переменными GET

0 голосов
/ 02 апреля 2010
$(function(){
    $('form').sumbit{
        $('this').serialize();
    }
});

В jQuery приведенный выше код даст вам строку URL с параметрами POST в URL. Не исключено извлечь параметры POST.

Чтобы использовать jQuery , вам необходимо включить библиотеку jQuery. Для этого используйте следующее:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.1/jquery.min.js" type="text/javascript"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...