0

私はjQueryを使用していますが、コンソールから次のように返されます。

Data Loaded: [object Object]

jQuery:_

$(document).ready(function(){
    //Button click event

    $("#ajaxForm").submit(function(e){
        // disable the form submit
        e.preventDefault();
    });
    /* get some values from elements on the page: */
    var $form = $( this ),
    term = $form.find( 'input[name="id"]' ).val(),
    url = $form.attr( 'update' );


    /* Send the data using ajax */
    var posting =
        $.ajax({
            url: url
        });

    $.post(url, { id: term } ).done(function(data) {
        console.log("Data Loaded: " + data);
        $("#result").empty().append(data);      
    });
});

'json'の結果を"文字列"に変換する方法。ありがとう。

4

4 に答える 4

2

これを試して

JSON.stringify(data);
于 2013-02-26T10:36:43.847 に答える
1

JSON オブジェクトを文字列に変換するには、次のコードを使用します。

JSON.stringify(data);

「データ」は JSON オブジェクトです。

文字列を JSON オブジェクトに戻すには、次のコードを使用します。

JSON.parse(String);
于 2013-02-26T10:49:06.730 に答える
0
$.post(url, returnFunction(data){...}, 'text'); 

テキスト形式であることを確認しdataますが、代わりに次のことを行う場合:

$.post(url, returnFunction(data){...}, 'json');

data次に、jQuery はJSON オブジェクトであることを自動的に確認します。

jQueryは、データが何であるかをインテリジェントに推測し、正しいオブジェクトを返そうとします。「テキスト」または「json」を入れると、これが明示されます。

于 2013-02-26T10:44:46.693 に答える
0

jsonが正しくないことを返します。フォームを「送信」をクリックすると、JSON が返されます。フォームが返されます。

スクリプトは正しいですか?

$("#ajaxForm").submit(function(e){
    // disable the form submit
    e.preventDefault();
});

この場合、イベントは機能しませんが、送信ボタンは機能しません。

form.html . _

< form action = "update" method = "post" id = "ajaxForm" >
        < fieldset class = "success" >
        < legend > The fields marked with * . < /legend>
        < div >
        < label for = "destination" class = "block" >
        host:
        < span class = "mandatory_asterisk" > * < /span>
        < /label>
        < select id = "destination" class = "select" name = "destination" >
        < option value = "element1" > element1 < /option>
        < option value = "element2" > element2 < /option>
        < /select>
        < /div>
        < div >
        < span class = "infoTrigger" > Update a page of the search < /span>
        < label for = "id" class = "block" >
        page
you want to index:
        < /label>
        < input type = "text" class = "text" id = "page" name = "page"
        value = "" / >
        < /div>
        < div >
        < span class = "infoTrigger" > Update a certain id of the host < /span>
        < label for = "id" class = "block" >
        id
on the host (e.g. element1 - id - post - json):
        < /label>
        < input type = "text" class = "text" id = "id" name = "id"
        value = "" / >
        < /div>
        < !-- < input id = "operation" type = "submit" / > -- >
        < input type = "submit" value = "update" name = "update" id = "operation" / >
        < /fieldset>
        < div id = "anotherSection" >
        < fieldset >
        < legend > Response from jQuery Ajax Request < /legend>
        < div id = "result" > < /div>
        < /fieldset>
        < /div>
        < /form>
于 2013-02-26T11:26:51.200 に答える