【发布时间】:2011-01-11 08:11:29
【问题描述】:
编辑:
我发现我的评估不起作用的问题。从我的 codeIgniter 函数返回的所有文本前面都有一个空格,所以当我看到“成功”时,它实际上是“成功”。我不知道为什么会这样,但我当然可以使用它。
至于下一步 - 打开新视图 - 唐尼的回答是完美的!
我将 CodeIgniter 用于我的 AJAX 库的 JQuery 应用程序。我只是在学习 AJAX 的东西,所以我可能在这里遗漏了一些基本的东西......
以下代码用于登录表单。
目标是——在表单提交上使用 ajax 调用,这样我就可以验证错误并在屏幕上提供错误消息,而无需刷新网页。我正在使用 CodeIgniter form_validation 类进行所有验证。
我的 codeigniter 函数返回一个文本值 - 一个适当的错误消息或单词“成功”。我想评估文本值,如果它显示“成功”,则调用另一个 ajax 函数来加载所需的 CodeIgniter 函数,该函数将为登录用户加载主页。
现在一切都在下面的代码中运行,直到我得到语句“if data=='success'”。
当我知道它是真的时为什么会返回假,因为屏幕上的消息显示“成功”?
$(document).ready(function() {
$('#registration_form').submit(function(e) {
e.preventDefault();
$.post("login", {
email : $('#email').val(),
password : $('#password').val()
}, function(data) {
$('#message').text(data);
if (data == "success") {
alert(data);
post("landingpage");
}
});
});
});
【问题讨论】:
-
您是否已在客户端验证数据变量的值是否为 'success' ?在那里放一个警报以查看换行符或其他任何内容.. 执行
alert('-' + data + '-');并查看它是否会发出警报-成功-但在您检查之前执行此操作.. -
行 $('#message').text(data);将我网页上的值更改为包含的任何数据。它确实显示值“成功”。但不显示警报。
标签: php jquery ajax codeigniter