我有一个包含字符串的servlet,其中后者是一个包含多个条目的JSON字符串。现在我想通过jQuery访问带有ajax的String。现在,如果我的功能:
function myFunction() {
$("#myButton").click(function() {
$.ajax({
url: // servlet,
type: "GET",
dataType : "text",
success: function() // I want to display the string from the servlet,
error: // stuff
// other code
无论如何我怎么能这样做。我还可以在成功部分中放置另一个函数而不是匿名函数吗?
答案 0 :(得分:0)
我想显示来自servlet的字符串
您的success方法有一个参数data
success: function(data){ alert( data ); }
我也可以在成功部分中放置另一个功能而不是 匿名函数?
success: namedFunction,
function namedFunction(data){ alert(data); }
答案 1 :(得分:0)
您可以传递要在success
或error
上执行的函数表达式。成功回调的第一个参数是response
通过服务器发送。
试试这个:
function successGoesHere(response) {
console.log(response);
}
function errorGoesHere(err) {
console.log(err);
}
function myFunction() {
$("#myButton").click(function() {
$.ajax({
url: "YOUR_URL",
type: "GET",
dataType: "text",
success: successGoesHere,
error: errorGoesHere
})
})
}
当您在dataType : "text"
中传递ajax config
时,回复将始终为纯文字,以防万一您希望它为json
,您的回复将为string representation of json
因此,您必须使用JSON.parse(response)
解析它才能获得JSON object
答案 2 :(得分:0)
这是你要找的吗?
function getString(url, handleResponse, handleFailure) {
var request = new XMLHttpRequest();
request.open("GET", url, true);
request.onload = function () {
if (request.status >= 200 && request.status < 400) {
if (handleResponse) {
handleResponse(request.responseText);
}
} else {
if (handleFailure) {
handleFailure(request.status);
}
}
};
}
这只是从URL(No JQuery)获取一个字符串
答案 3 :(得分:0)
使用ajax请求成功:function(resp){ 用于解析json和show parsed json的代码 // var json = $ .parseJSON(data); }
答案 4 :(得分:0)
var callback = function(data, textStatus, xhr)
{
alert(data + "\t" + textStatus);
}
var testman = function(str, cb) {
var data = 'Input values';
$.ajax({
type: 'post',
url: '',// servlet
data: data,
success: cb
});
}
testman('Hello, Dear', callback);