我有一个基本的登录表单设置,我使用ajax请求将两个变量(登录名+密码)发送到另一个页面,该页面相应地检查并返回状态。我的ajax代码
$('form.login_form').on('submit', function(){
var that = $(this),
url = "textlogin.php",
type = that.attr('method'),
data = {};
that.find('[name]').each(function(index, value){
var that = $(this),
name = that.attr('name'),
value = that.val();
data[name] = value;
});
$.ajax({
url: url,
type: type,
data: data,
success: function(response){
if(response==""){
$('#login_err').html("its null");
}else{
$('#login_err').html(response);
}
}
});
return false;
});
不起作用,success
函数始终返回null。代码工作正常,直到我没有使用ajax
和jquery dialog
进行登录。
我试过的事情:
1.设置Content-type
2.设置dataType
3.使用$ .post,什么不是。
答案 0 :(得分:0)
以下是Ajax的示例代码。
$.ajax({
url: "login.php?",
data:"username="+username+"&password="+password,
success: function(data)
{
}
});
请试试这个。
如果您使用的是Mozilla Firefox,请安装firebug add。安装firebug后打开它。现在您可以找到控制台tab.make it enable。现在,当你运行ajax时,你可以在这里看到。
假设你直接传递数组然后更好的方法是在php中使用implode函数,所以使用这个函数。
如果有效,请给我回复。
答案 1 :(得分:0)
您需要指定数据类型。我希望这会对你有所帮助
function a()
{
var ip=new Object();
ip.name=value;
var data=JSON.stringify(ip);
$.ajax({
url: "http://127.0.0.1/file.php",
data:data,
dataType:"json",
success: function(data)
{
}
});
}