-2

まず、json_encode 関数でデータをエンコードします。

たとえば、次のようになります。

{"test":"test value"}

私がやりたいのは、テストを「テスト値」のデータを保持できるjavascript変数にすることです。

4

3 に答える 3

0
$.getJSON('ajax/test.json', function(data) {
  var items = [];

  $.each(data, function(key, val) {
    items.push('<li id="' + key + '">' + val + '</li>');
  });

  $('<ul/>', {
    'class': 'my-new-list',
    html: items.join('')
  }).appendTo('body');
});

jqueryドキュメントから直接...

于 2012-05-18T20:57:24.557 に答える
0

index.php (json_encodeここで使用):

<?php
  $foo = array('test' => 'test value');
  echo json_encode($foo);
?>

example.html

<script type="text/javascript">

  $.get('index.php', function(response) {
    alert(response['test']);
    // this will alert "test value"
  }, 'json');

</script>

EDIT1:example.html (jQueryソリューションなし):

<script type="text/javascript">

window.onload = function() {
    var request;
    request = getHTTPObject();
    request.onreadystatechange = sendData;
    request.open("GET", "index.php", true);
    request.send(null);
}

function sendData() {
    if(request.readyState == 4){
    var JSONtext = request.responseText;
    var JSONobject = JSON.parse(JSONtext);

    // notice how variables are used
    var output = JSONobject.test;

    alert(output); // displays "test value"
}


function getHTTPObject(){
    var xmlhttp = false;
    if(window.XMLHttpRequest){
        xmlhttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        try{
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch(e){
            try{
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch(e) {
                xmlhttp = false;
            }
        }
    }
    return xmlhttp;
}
</script>
于 2012-05-21T21:37:20.507 に答える
0

オブジェクトは連想配列です。キーと値のペアを格納します。したがって、あなたがしなければならないことは次のとおりです。

var test = function(){}
test["hello"] = "world";

これはhello、変数およびworldその値として設定されます。あなたはこれをテストすることができます

alert(test.hello);

helloandworldを json のキーと値に置き換えます

この例でこれがさらに役立つことを願っています: Jquery AJAX を使用して index.php リソースに移動し、json オブジェクトを返します。

index.php

<?php
$variables = array('hello' => 'world');
echo json_encode($variables);
?>

example.html

var test = function(){}
$.ajax({
   url: index.php,
   success: function(json) {
    for(var key in json ){
     var testVarName = key;
     var testVarValue = json[key];
     test[testVarName ] = testVarValue;
    }
}
});

したがって、testオブジェクトには変数がhelloあり、その値はworld

于 2012-05-21T21:21:34.293 に答える