I have 3 ajax request that get a response from a web service, I then want to use these response and inject it into the document.load. When I try to inject the html noting changes. I think I need to have sometype of callback but I do not know how to do this. Thanks,
$(document).ready(function prepareDocument() {
var pageId = getPageId();
var ratingHtml = '<div id="rating" class="rating" data-role="rating" data-param-vote="on" data-param-rating="3" onclick="confrimRatingInsert()"></div><p>#ofRatings</p>';
canEditRating(pageId, function (data) {
if (data.msg == null) {
canEdit = data.result;
if (canEdit == false) {
ratingHtml = ratingHtml.replace('data-param-vote="on"', "");
}
}
else {
displayDialogBox("Error", data.msg);
}
});
getAverageRating(pageId,function(data) {
if (data.msg == null) {
averageRating = data.result;
ratingHtml = ratingHtml.replace('data-param-rating="3"', 'data-param-rating="' + averageRating + '"');
}
else {
displayDialogBox("Error",data.msg);
}
});
getNumberOfRatings(pageId, function (data) {
if (data.msg == null) {
numberOfRatings = data.result;
ratingHtml = ratingHtml.replace('#ofRatings', "( " + numberOfRatings + " sRatings)");
}
else {
displayDialogBox("Error", data.msg);
}
});
alert(ratingHtml);
});
function canEditRating(pageId,fn) {
$.ajax({
url: "../services/rating.ashx?action=canEditRating&pageId=" + pageId,
dataType: "json",
type: "GET",
data: {},
success: function (data) {
fn(data);
},
error: function (err) {
displayDialogBox("Error", err.toString());
}
});
}
function getAverageRating(pageId, fn) {
$.ajax({
url: "../services/rating.ashx?action=getAverageRating&pageId=" + pageId,
dataType: "json",
type: "GET",
data: {},
success: function (data) {
fn(data);
},
error: function (err) {
displayDialogBox("Error", err.toString());
}
});
}
function getNumberOfRatings(pageId, fn) {
$.ajax({
url: "../services/rating.ashx?action=getNumberOfRatings&pageId=" + pageId,
dataType: "json",
type: "GET",
data: {},
success: function (data) {
fn(data);
},
error: function (err) {
displayDialogBox("Error", err.toString());
}
});
}