将json对象的值附加到输入字段

时间:2013-11-10 05:44:34

标签: javascript jquery ajax json

我试图将json对象(name& color)的值附加到表单中的两个输入字段。这是在我的网络服务器内进行的api调用的模型。 jQuery函数获取第一个输入字段的值,然后连接url + json文件位置,最后进行api调用。控制台显示成功检索到的值,但我不确定如何将它们相应地附加到其输入字段。 SITE

杰森:

{
    "name": "test1",
    "color": "red",
}

的jQuery / AJAX

$(document).ready(function() {

  /** get the inputs we might need */
  var $result = $('#result');
  var $input = $('#input');

  $result.data('url', $result.val());

  var timer;

  /** function to submit data to the server and
      update the result input on success */
  function submitForm( input, newValue) {
    $.ajax({
      type: "GET",
      url: newValue,
      data: {input:input},
      dataType: 'json',
      success: function (data) {
        $result.val(newValue);
      }
    });
  };

  /** on key up, fill #result with the url + input */
  $input.bind('keyup', function() {
    var $this = $(this);
    var inp = $this.val();
    var url = $result.data('url');
    var newValue = url + inp + '/info.json';

    if(timer) { clearTimeout(timer); }
    timer = setTimeout(function(){
      submitForm(inp, newValue) ;
    }, 500);
    return false;
  });
});

1 个答案:

答案 0 :(得分:1)

我认为问题是从对象(来自JSON)获取元素并将这些值提供给输入?

<input type="text" id="name">
<input type="text" id="color">

一个基本的例子:

var myobj = {"name":"botskonet","color":"blue"}

for( k in myobj ){
    document.getElementById(k).value = myobj[k];
}

Fiddle