如何从ajax获取json数据并在输入框中预先显示它

时间:2015-05-12 05:20:52

标签: javascript jquery html ajax json

以下是Ii用于在json中获取响应的代码。 但是当我添加提醒alert(response.Subject);时,它会返回“未定义”

HTML:

<input type="text" id="subject" value='Subject'>

使用Javascript:

$.ajax({
    url: "/ebays/prefilledcontentajax",
    type: "POST",
    cache: false,
    async: true,
    data: {
        Type: $("#Type").val(),
    },
    success: function (response) {
        console.log(response); // it show the json that response returns. I want to show in the input box prefilled with the data that response return 
    }
});

请帮帮我。

4 个答案:

答案 0 :(得分:2)

您可以使用val在文本框中设置值

$('#subject').val(response[0].Subject);

此外,您可能想要更改ajax来电:

$.ajax({
    url: "/ebays/prefilledcontentajax",
    type: "POST",
    cache: false,
    async: true,
    data: {
        Type: $("#Type").val(),
    },
    dataType: "json",
    // ^^^^^^^^^^^^^
    success: function (response) {
        // response is JSON
        $('#subject').val(response[0].Subject);
    }
});

val

  

设置匹配元素集中每个元素的值。

http://api.jquery.com/val/#val2

ajax

  

执行异步HTTP(Ajax)请求。

http://api.jquery.com/jQuery.ajax/

答案 1 :(得分:0)

这实际上取决于你的JSON对象的构造,但是standart是你用JS解析的responseText

也许您尝试获取响应文本或响应JSON

var m1 = [d3.event.pageX, d3.event.pageY]
  , o1 = [o0[0] + (m0[0] - m1[0]) / 8, o0[1] + (m1[1] - m0[1]) / 8];

答案 2 :(得分:0)

你可以这样写:

$('#subject').val(response.Subject);

答案 3 :(得分:0)

我觉得这很容易。只需添加:

$('#subject').val(response.Subject); 

在您的成功处理程序中。