以下代码中的所有内容都有效,但在processfeed.php执行时它没有显示任何内容。我需要帮助理解原因。关于这个的一些背景..它在一个580 x 130 Iframe中执行..并且processfeed.php有一个javascript重定向回到它全部开始的地方,这是一个基本上有一个帖子按钮的文本区域..就像我说的,一切正常加载gif ..
<body onLoad="loadingAjax('myDiv');">
<script>
function loadingAjax(div_id)
{
$("#"+div_id).html('<center><img src="images/ajax_loader.gif"></center>');
$.ajax({
type: "POST",
url: "processfeed.php?<? echo "loggedinuser=$loggedinuser&message=$message&private=$private&userto=$userto&feedpic=$feedpic& feedpictmp=$feedpictmp";?>",
data: "loggedinuser=" + loggedinuser,
success: function(msg){
$("#"+div_id).html(msg);
}
});
}
</script>
<div id="myDiv"></div>
LOL,无论是谁开了一个帐户并对我的帖子发表了评论,当你删除帐户时它都消失了。我没有阅读所有这些内容。
此外,我最终会以电话号码的形式检测数字串,这些帖子会自动删除。我已经有了适合其他事情的东西。
我一直都错了。它实际上没有传递变量。在我纠正了我的愚蠢错误后,加载gif现在显示,但数据未被传递,所以我再次重试所有建议。非常感谢,伙计们,说真的,你做了很多。
答案 0 :(得分:0)
你没有使用jquery。
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
function loadingAjax(div_id)
{
$("#"+div_id).html('<center><img src="images/ajax_loader.gif"></center>');
$.ajax({
type: "POST",
url: "processfeed.php?<? echo "loggedinuser=$loggedinuser&message=$message&private=$private&userto=$userto&feedpic=$feedpic& feedpictmp=$feedpictmp";?>",
data: "loggedinuser=" + loggedinuser,
success: function(msg){
$("#"+div_id).html(msg);
}
});
}
</script>
答案 1 :(得分:0)
您需要执行以下步骤:
验证您的代码中是否添加了Jquery库。
检查firebug或其他工具以查看任何客户端脚本错误。
插入一些警报或调试代码,以查看错误发生的位置。
提醒ajax调用的网址并验证是否正确?
并更改脚本代码:
<head>
<style>
.dvLoader
{
right:0px;
bottom:36px;
left: 234px;
position: absolute;
display:none;
top: 85px;
z-index: 999;
}
.dvLoader #overlay
{
height: 100%;
width: 100%;
background-color: Black;
opacity: 0.5;
filter: alpha(opacity=50);/*IE*/
/*position: fixed; */
z-index: 1000;
bottom:0;
}
.dvLoader #loaderContent
{
background-image:url(../images/loading_box.png);
background-repeat:no-repeat;
height: 50px;
left: 50%;
margin: 0;
padding: 5px;
position: fixed;
text-align: center;
top: 40%;
width: 220px;
z-index: 1001;
}
.dvLoader #loaderContent label
{
color: #666666;
font-size:13px;
margin-left:5px;
font-weight:bold;
}
</style>
<script>
function loadingAjax(div_id)
{
$('#dvLoader').show();
$.ajax({
type: "POST",
url: "processfeed.php?<? echo "loggedinuser=$loggedinuser&message=$message&private=$private&userto=$userto&feedpic=$feedpic& feedpictmp=$feedpictmp";?>",
data: "loggedinuser=" + loggedinuser,
success: function(msg){
$("#"+div_id).html(msg);
$('#dvLoader').hide();
}
</script>
</head>
<body>
<div class="dvLoader" id="dvLoader">
<div id="overlay">
</div>
<div id="loaderContent">
<div>
<label>Loading...</label>
</div>
<img src="@Url.Content("~/images/loader.gif")" alt="" />
</div>
</div>
<div id="myDiv"/>
</body>
答案 2 :(得分:0)
尝试这样
删除
<?php echo ....
代码中的和下面的广告
将你的all变量传递给AJAX函数并创建这样的url。
function loadingAjax(div_id,loggedinuser,message,private,userto,feedpic,feedpictmp)
{
document.getElementById("'"+div_id+"'").innerHTML = '<center><img src="images/ajax_loader.gif"></center>';
$.ajax({
type: "POST",
url: "processfeed.php?loggedinuser="+loggedinuser+"&message="+message+"&private="+private+"&userto="+userto+"&feedpic="+feedpic+"&feedpictmp="+feedpictmp,
data: "loggedinuser=" + loggedinuser,
success: function(msg){
$("#"+div_id).html(msg);
}
});
}