我有“创建用户”表单,必须检查用户名是否已存在。为此,我在启动此脚本的按钮上创建了一个onclick函数:
$.ajax({
type: \"POST\",
dataType: \"json\",
url: \"test.php\",
data: $('input[name=Username]').val(),
contentType: \"application/json; charset=utf-8\",
success: function(data){
alert('Items added');
},
error: function(e){
console.log(e.message);
}
});
然而,没有任何事情发生,甚至没有发出成功的警报! 请帮我介绍如何发布单个变量以及如何从PHP页面检查结果是否存在用户名。
答案 0 :(得分:2)
您的data
密钥需要value
这是一个对象,如下所示:
data: {username: $('input[name=Username]').val())},
这样,将创建POST值username
。
答案 1 :(得分:2)
\
s data: { keyName: $('input[name=Username]').val() }
contentType: etc etc
。 (离开它可能会导致PHP“这不是表单数据,我不能用它填充$_POST
”。让jQuery确定它发送的内容类型。然后您可以在PHP中访问$_POST['keyName']
。
答案 2 :(得分:1)
您需要将变量分配给可在$_POST
调用中引用的项目:
$.ajax({
type: "POST",
url: "test.php",
data: {user:$('input[name=Username]').val()},
success: function(data){
alert('Items added');
},
error: function(e){
console.log(e.message);
}
});
然后在test.php
中,只需检索$_POST['user']
。
编辑 - 我删除了contentType(感谢Rocket)。我还删除了dataType,因为如果在test.php
上正确设置标题,则不需要这样做:
header('Content-type: application/json');