如何解决AJAX联系表格是否发送空参数?
| 我想问的不是这个问题,但我真的需要另一只眼睛,因为这一定是我所缺少的愚蠢的东西。 我以前使用过相同的脚本,所以我不知道出了什么问题。 这是frnt的结束代码:http://jsfiddle.net/fU3Q3/1/ 后端PHP是:<?php
require(\"../db.php\");
// get the posted values
$email=$_POST[\'email\'];
$password=$_POST[\'password\'];
// now validating the username and password
$sql=\"SELECT * FROM admin WHERE email=\'\".$email.\"\'\";
$result=mysql_query($sql) or die (\"No such username exists!\");
$row=mysql_fetch_array($result);
// if username exists
if(mysql_num_rows($result)>0)
{
// compare the password
if(strcmp($row[\'password\'],$password)==0)
{
echo \"yes\";
// set the session from here
$_SESSION[\'email\']=$email;
}
else
echo \"no\";
}
else
echo \"no\"; // invalid Login
?>
使用firebug,发送到ajax-login.php的URL似乎是“ 1”,其中结尾的位显然是随机数。
任何帮助深表感谢。
马丁
解决方法
$.post(\"ajax-login.php\",{ email:$(\"input#email\").val(),password:$(\"input#password\").val
(),rand:Math.random() },function(data)
您有2个相同类型的ID,例如电子邮件的div ID,例如电子邮件的输入ID,您无法调用#email,因为它将在第一次出现时停止
为了进一步说明...没有关联类名的id被认为是唯一的,但是,如果您具有:
<div class=\'content\' id=\'email\'>
<input class=\'content\' id=\'email\'>
您可以使用以下示例在jquery中调用它们:
正式声明,键入>类名\'。\'> id \'#\'
$(\"div.content#email\");
$(\"input.content#email\");
如果没有匹配第一个标签,这将无法工作
$(\".content#email\");
$(\".content#email\");
,正如另一个人说的不要共享ID并尝试以下操作:
更换:
{ email:$(\"#email\").val(),password:$(\"#password\").val(),rand:Math.random() }
与
$(this).parents(\"form\").serialize()
http://jsfiddle.net/sjD9q/
,您是密码,并且电子邮件输入与包含它们的父div共享一个ID,如果您更改div ID,则该表格应该可以使用。
注意:坏习惯是拥有多个同名的ID,因为这会破坏许多浏览器中的相关CSS和Javascript。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。