Ajax вызов страницы aspx JQuery JSON - PullRequest
1 голос
/ 05 июня 2009

Я пытаюсь сделать вызов Ajax на страницу aspx На стороне сервера запрос приходит как «объектный объект», и я не могу сериализовать его, получая «не примитив JSON ...», он работает, однако, когда вместо объекта json я передаю строку json .... Проблема заключается в том, что на стороне клиента я Я использую объект JSON, который я должен преобразовать в строку перед отправкой. Я попытался использовать функцию JSONToString () из json.org, но при добавлении библиотеки jquery выдается ошибка. Кто-нибудь знает, как это сделать, я был бы очень признателен за любую помощь.

добавить "JQuery / jquery-1.3.2.js"

добавить "js / json.js"

<script type="text/javascript">
    function callAjax() {

    var myjson = { document: { manufacture: { item: ['Alfa Romeo']}} }     
        $.ajax({
            url: 'jsonresponse.aspx',
            type: 'POST',                
            //contentType: "application/json; charset=utf-8",
            data: myjson.toJSONString(),  // throws an error in json libary //  return JSON.parse(this, filter); //.. Microsoft JScript compilation error: Syntax error
            //data: myjson, can't serialize on the server request comes as object object
            //data:{ document: { manufacture: { item: ['Alfa Romeo']}} }, works but I need something to convert object to a string as it is much bigger then the one in example 
            timeout: 1000000,
            dataType: "json",
            error: function() {
                alert("error");
            },
            success: function(myResult) {
            //alert(myResult);              
            }
        });
    }


jsonresponse.aspx

    XmlDocument myxml = new XmlDocument();  
    StreamReader reader = new StreamReader(Page.Request.InputStream);

    string test;
    test = reader.ReadToEnd();

    JavaScriptSerializer jss = new JavaScriptSerializer();
    myxml = jss.Deserialize<XmlDocument>(test);

1 Ответ

2 голосов
/ 05 июня 2009

Я не уверен, почему выдает ошибку после добавления jQuery, но, возможно, попробуйте ...

JSON.stringify(myjson)

... вместо ...

myjson.toJSONString()

Я использую это с jQuery без проблем, но учтите, что я использую json2.js с www.json.org. Я не могу сказать, используете ли вы это или нет.

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