【发布时间】:2014-03-07 17:07:36
【问题描述】:
我正在为我的网站使用 Django。目前我正在使用location.reload();,这样当用户填写数据并单击一个按钮时,它会触发location.reload(),而当整个页面重新加载时,它将执行 Django 脚本。但我不想重新加载整个页面来执行脚本,我只想使用 ajax 重新加载特定的<div>。我该怎么做?
{% if userFirstName %}
<div id="topAdminCont" class="left">
<div id="userSection">
<!-- <img src="{% static "assets/images/admin_icon.png" %}" width="20" alt="Admin" class="left" /> -->
<p id="admin" class="right">{{userFirstName}}</p>
<div class="clear"></div>
</div>
<ul id="dropAdmin">
<li><a href="#" id="chngPwdBut">Change Password</a></li>
<li><a href="/authentication/logout">Logout</a></li>
</ul>
</div>
{% else %}
<div id="popCont" class="left username_view">
<p id="signIn"><a href="#">Signin</a></p>
<p>/</p>
<p id="signUp"><a href="#">Signup</a></p>
<div class="clear"></div>
</div>
{% endif %}
上述 HTML 的 Jquery AJAX 处理程序:
function authenticateUser(email, password)
{
$.ajax({
url: '/authentication/login/',
type: 'POST',
cache: 'false',
async: 'true',
data: {
signinEmail:email,signinPwd:password,
},
dataType: "json",
success:function(response){
statusCode = response.statusCode;
if (statusCode == 200)
{
location.reload();
}
}
});
}
【问题讨论】:
-
location.reload会很好地重新加载位置,而不仅仅是页面上的一些内容。你想刷新哪个<div>? -
不。我只是想一次又一次地重新加载上面的 HTML 部分。我们可以使用 AJAX 来做到这一点吗?
-
此代码 sn-p 的父
<div>id 是什么? -
说
-
请检查上面我已经添加了AJAX Jquery Handler