Javascript 无法使用.hide()隐藏imag
在我的asp.net mvc中有以下视图,其中显示了一个ajax加载imag,在启动jquery函数后,我试图将其隐藏,如下所示:-Javascript 无法使用.hide()隐藏imag,javascript,jquery,Javascript,Jquery,在我的asp.net mvc中有以下视图,其中显示了一个ajax加载imag,在启动jquery函数后,我试图将其隐藏,如下所示:- <div id= "geturl" data-url="@Url.Action("ListPackages", "Home")"> <h1>All Processes</h1> <img id="tobehide" src="~/Content/ajax-loading2.gif" /> <ul id=
<div id= "geturl" data-url="@Url.Action("ListPackages", "Home")">
<h1>All Processes</h1>
<img id="tobehide" src="~/Content/ajax-loading2.gif" />
<ul id="products">
</ul>
所有过程
然后是以下JavaScript文件:-
$(document).ready(function () {
$.ajax({
url: $('#geturl').data('url'),
type: 'GET',
cache: false,
success: function (result) {
$('#tobehide').hide();
$.each(result.data, function (key, val) {
var str = val.packageName;
$('<li/>', { text: str })
.appendTo($('#products'));
});
}
});
});
$(文档).ready(函数(){
$.ajax({
url:$('#geturl')。数据('url'),
键入:“GET”,
cache:false,
成功:功能(结果){
$(“#tobehide”).hide();
$.each(result.data,function(key,val){
var str=val.packageName;
$('',{text:str})
。附件($(“#产品”);
});
}
});
});
当前,数据将填充在中,但加载的imag不会隐藏。那么,如何在java脚本开始执行时强制imag隐藏呢?。
致以最诚挚的问候您的代码是正确的,应该可以正常工作
尝试使用FireBug或Chrome开发者工具查看您从ajax调用中得到的javascript错误。
如果这仍然没有帮助,并且您希望不管怎样都隐藏图像,那么在您正在使用的jqueryajax调用上使用“complete”回调
$(document).ready(function () {
$.ajax({
url: $('#geturl').data('url'),
type: 'GET',
cache: false,
complete: function (result) {
$('#tobehide').hide();
$.each(result.data, function (key, val) {
var str = val.packageName;
$('<li/>', { text: str })
.appendTo($('#products'));
});
}
});
});
$(文档).ready(函数(){
$.ajax({
url:$('#geturl')。数据('url'),
键入:“GET”,
cache:false,
完成:功能(结果){
$(“#tobehide”).hide();
$.each(result.data,function(key,val){
var str=val.packageName;
$('',{text:str})
。附件($(“#产品”);
});
}
});
});
它应该可以正常工作。你的密码没错,兄弟
尝试添加异步选项。将其设置为false。然后再试一次可能有一些错误,我试图在没有ajax代码的情况下隐藏图像,它正在工作在渲染后检查您的图像id尝试给它类而不是类验证
$('#tobehide')
是否返回了一些内容。隐藏不起作用似乎很奇怪。你没有任何其他具有该id的元素吗?ASP在进入浏览器之前不会更改id吗?(检查浏览器中显示的实际输出,查看页面源。)每个$的作用是什么?你不应该选择一些元素吗?此外,根据我对的理解,每个都只应该传递一个处理程序。还应怀疑#tobehide
上的ID冲突或键入错误,因为OP声明“当前数据将被填充”(我在调用成功回调时读到)。这可能不起作用,因为数据正在填充,而实现这一点的代码在同一个handler.async中并不重要-如果ajax中存在错误(可能是这种情况),那么无论如何都不会触发成功回调。。。