Параметры для dojo.xhrPost - PullRequest
       8

Параметры для dojo.xhrPost

3 голосов
/ 21 апреля 2011

Когда я использую dojo.xhrGet, я использую его таким образом, чтобы отправить более одного параметра через GET

dojo.xhrGet
({
    url:"MyServerPageURL?Param_A="+"ValueA"+"&Param_2="+"Value2",
    load: function(data)
    {
        //do something
    },
    preventCache: true,
    sync: true, 
    error: function(err)
    {
        alert("error="+err); 
    }
});

Как я могу сделать подобное (отправить более одного параметра), когда яиспользовать вместо dojo.xhrPost?

Ответы [ 3 ]

6 голосов
/ 22 апреля 2011

Вы не хотите использовать параметр postData, если не хотите отправлять необработанную строку POST. Обычно вы хотите использовать параметр «content». Например:

dojo.xhrPost({
    url: 'http://whatever...',
    contents: {
        ParamA: 'valueA',
        ParamB: 'valueB'
    },
    load: function(response) {
        // ...
    }
});

Примечание. Использование 'content' также работает для xhrGet, что устраняет необходимость самостоятельно создавать строку запроса и добавлять URL-адрес.

4 голосов
/ 21 апреля 2011

Попробуйте использовать postData параметр.Например:

        var myParameters= {"Param_A":"Value_A", "Param_B":"Value_B"};

        var xhrArgs = {
                        url: "postIt",
                        postData: dojo.toJson(myParameters),
                        handleAs: "text",
                        headers: { "Content-Type": "application/json", "Accept": "application/json" },
                        load: function(data) {

                        },
                        error: function(error) {

                        }
                    }


 var deferred = dojo.xhrPost(xhrArgs);
0 голосов
/ 17 сентября 2012

Для xhrPOst можно указать имя формы для публикации. таким образом, все ваши элементы формы будут опубликованы. Если вы хотите передать какой-то дополнительный параметр, используйте скрытую переменную в форме публикации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...