我一直在从事我的PHP项目,并且尝试添加一个功能来告诉用户在更新输入时是否已经采用了他们在注册表格中输入的用户名。开始时,我以为我知道该怎么编码-但在此过程中遇到了一些问题。
当我将数据发布到我的PHP脚本时,我得到了“全部清除”。我已经对它以及FireBugged进行了双重检查,因为所有变量都存在,并且服务器返回的结果与预期完全相同。我已经在数据库中插入了一个测试字段,以便可以查看它是否有效。数据库中的名称是“ Cameron”。
现在,对于我的代码。
function checkUsername() {
$.post(rootpath + "/inc/php/handlers/checkusername.php", {
submit: "submitted",
username: $('#username').val()
}, function (data) {
if (data = 'not_taken') {
$('#cui').html('<img src="' + rootpath + '/inc/images/icons/Checkmark-32.png" />');
}
else {
$('#cui').html('<img src="' + rootpath + '/inc/images/icons/block-icon-32.png" width="32" height="32" />');
}
}, "html");
}
然后
<input type='text' name='username' id='username' onkeyup='checkUsername();' />
在这种情况下,我希望将div的HTML更改为图像的HTML。但是代码要做的是切换到选中标记图像(第一个),而不管返回结果如何(请参见下文)。
我认为这是我用于更新div
.html()
的方法的问题。但是我随后发现,即使提交的第一个组合是数据库的组合(返回“ taked”),输出仍将是选中标记图像。很明显,我需要使用正确的图像进行更新。我很确定这不是PHP问题,因为我设置的脚本返回了预期的数据。
在此先感谢您的帮助!
最佳答案
您正在使用赋值运算符,而不是在条件中检查是否相等:
if(data = 'not_taken') {
应该
if(data == 'not_taken') {
关于javascript - 如何(有效)使用jQuery将输入的值与数据库进行匹配?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4002563/