我想要做的很简单。我想对一个特定的html类进行AJAX调用,这样无论何时加载html页面,jquery都会对该特定的html div class
进行AJAX调用。
例如:
<div class="targeted"></div>
在jquery中:
$('.targeted')
我知道进行AJAX调用的语法是:
$.ajax({
type: "GET",
url: "/api/something",
success: function(data) {
console.log(data);
}
});
但是,无论何时加载页面,我如何对$('.targeted')
实施此AJAX调用?
由于
答案 0 :(得分:1)
如果您想在元素中显示ajax调用的结果,则从success
回调中更新元素:
$.ajax({
type: "GET",
url: "/api/something",
success: function(data) {
$('.targeted').html(data);
}
});
该示例假设
您想要替换元素的内容(而不是添加到元素中);更多选项in the jQuery API。
data
将是HTML。如果是纯文本,请使用.text(data)
,而不是.html(data)
。如果是结构化数据,那么您当然需要做更多的工作来将信息以所需的形式提供。
答案 1 :(得分:0)
你可以这样做:
string ServerPath = System.Configuration.ConfigurationManager.AppSettings["FilePath"] + "Template.xlsx";
System.IO.FileInfo file = new System.IO.FileInfo(Server.MapPath(ServerPath));
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment; filename=" + file.Name);
HttpContext.Current.Response.AddHeader("Content-Length", file.Length.ToString());
HttpContext.Current.Response.ContentType = "application/octet-stream";
HttpContext.Current.Response.TransmitFile(file.FullName);
HttpContext.Current.Response.Flush();
HttpContext.Current.ApplicationInstance.CompleteRequest();
答案 2 :(得分:0)
window.onload = function() {
yourFunction();
};
function yourFunction(){
$.ajax({
type: "GET",
url: "/api/something",
success: function(data) {
$('.targeted').html(data);
}
});
}
或者正确地,您可以在文档中传递该方法,它将自动执行
$(document).ready(function(){
//This will execute onload oof your web page what you required
yourFunction();
})
function yourFunction(){
$.ajax({
type: "GET",
url: "/api/something",
success: function(data) {
$('.targeted').html(data);
}
});
}
答案 3 :(得分:0)
对于加载页面的时间,您使用:
$( document ).ready(function() {
console.log( "ready!" );
});
在准备好的文档中,您可以进行AJAX调用。如果您获得的结果是JSON格式,则需要包含dataType,如下所示:
$.ajax({
method: "GET",
url: "/api/something",
dataType: "json"
})
.done(function( data ) {
$('.targeted').append(JSON.stringify(data));
});
如果结果不是JSON,那么您只需附加数据。
另请注意:
从jQuery 3.0开始,jqXHR.success()
,jqXHR.error()
和jqXHR.complete()
回调将被删除。您可以改用jqXHR.done()
,jqXHR.fail()
和jqXHR.always()
。
答案 4 :(得分:0)
你可以像这样使用jquery load:
$(".targeted").load('/api/something');
如果你想在页面加载后等到下,请用window
load
包裹它,如下所示:
$(window).load(function () {
$(".targeted").load('/api/something');
});
P.S。 $(window).load(..)
和$(".class").load(url)
是两个不同的功能