Jquery ajax调用不向$post返回任何内容
这是我的密码:Jquery ajax调用不向$post返回任何内容,jquery,Jquery,这是我的密码: <div id="test"></div> <form id="form-lecturer-login"> <table> <tbody> <tr> <td> <label class="label">Username : </label><br>
<div id="test"></div>
<form id="form-lecturer-login">
<table>
<tbody>
<tr>
<td>
<label class="label">Username : </label><br>
<input name="username" value="" type="text">
</td>
</tr>
<tr>
<td>
<label class="label">Password : </label><br>
<input name="password" value="" type="text">
</td>
</tr>
</tbody>
</table>
<input value="Log In" type="submit">
</form>
<script type="text/javascript">
$('#form-lecturer-login').submit(function(){
$.post("../php/lecturer_login.php",$(this).serialize(),
function(data){
$('#test').html(data[0]).show();
}, "json");
});
</script>
用户名:
密码:
$(“#表单讲师登录”).submit(函数(){
$.post(“../php/讲师_login.php)”,$(this.serialize(),
功能(数据){
$('#test').html(数据[0]).show();
}“json”);
});
在www.u login.php中:
<?php
$stack = array();
array_push($stack,"test");
echo json_encode($stack);
?>
注意:我知道我正在传递我不使用的数据。只是为了测试的目的
“测试”div不会将文本更改为“测试”
我通过示例学习这一点,并遵循jquery文档。我错过了什么?
除以下内容外,是否还有其他内容:
<script type="text/javascript" src="../js/jquery-1.4.2.min.js" ></script>
在我需要的文档头中?我将执行以下操作
<?php
$stack = array();
$stack['info']='test';
echo json_encode($stack);
?>
我忘了你需要
event.preventDefault();
我认为问题在于你没有阻止回发 尝试这样做:
<script type="text/javascript">
$('#form-lecturer-login').submit(function(event){
event.preventDefault();
...
$(“#表单讲师登录”).submit(函数(事件){
event.preventDefault();
...
向函数中添加一个参数并调用preventDefault()方法。您没有阻止表单的自然提交,因此您永远看不到结果。使用Google Chrome的开发人员控制台和/或Firebug从AJAX调用中获取响应并将其发布到此处。-此外,您的AJAX脚本正在命中
讲师_login.php
但您在代码片段中引用了讲师.php
,因此请确保确保这些也匹配。讲师_login.phpNot的输出为空,这是相关的,但为什么要使用如此旧版本的jQuery?@KevinB我怎么能做到?
<script type="text/javascript">
$('#form-lecturer-login').submit(function(event){
event.preventDefault();
...