我正在尝试使用jquery在我的网页上的文本字段中获取GET请求的响应。目前,我有以下代码,我可以在控制台上获得响应。
$(document).on('click', '#get-button', function(e) {
e.preventDefault();
$.ajax({
type: "GET",
url: $("#url").val(),
data: '',
success: function(response, textStatus, XMLHttpRequest) {
console.log(response);
}
});
return false;
});
$(document).on('click', '#post-button', function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: $("#url").val(),
data: $("#json-data").serialize(),
success: function(response, textStatus, XMLHttpRequest) {
console.log(response);
}
});
return false;
});
下面是HTML代码的一部分,我想要适合响应(采用JSON格式)。
<div class="container">
<div class="row">
<div class="col-md-12">
<div class="panel panel-danger">
<div class="panel-heading">JSON Response</div>
<div class="panel-body text-danger">
<textarea class="form-control" rows="8" placeholder="server response"></textarea>
</div>
</div>
</div>
</div>
答案 0 :(得分:2)
$(document).ready(function(){
$('#get-button').on('click', function(e) {
e.preventDefault();
$.ajax({
type: "GET",
url: $("#url").val(),
success: function(response) {
console.log(response);
$('.form-control').val(response); // personally I would give your textbox an ID
}
});
return false;
});
$('#post-button').on('click', function(e) {
e.preventDefault();
$.ajax({
type: "POST",
url: $("#url").val(),
data: $("#json-data").serialize(),
success: function(response) {
console.log(response);
$('.form-control').val(response);
}
});
return false;
});
})
如果您的网址正确无误,则可以使用。
请记住,在得到响应之后,您将获得一个JSON对象,您将不得不使用JSON.stringify()将其转换为String。
我会尽力解释。在Javascript中,我们有对象和简单类型(boolean,String,float等)。当我们想要打印一个简单类型时,我们只看到它的价值。但是当我们想要显示一个Object时,JS引擎就有问题,因为每个对象都可能非常庞大,复杂。这就是为什么在打印对象或JSON(女巫是对象)时我们得到[对象]。 Luckilly JSON非常受欢迎,JS有一个默认的方法,用于将String序列化为JSON(JSON.parse(someString))和其他方式(JSON.stringify(JSONObject))。