我是jquery的新手。我正在尝试使用来自jquery的ajax()向我的php发送一封电子邮件,然后将其返回到我的jquery。但该计划无法运作。
我想在输入电子邮件时转发电子邮件。 $ .post(..)在jquerying.js文件中的valid()函数中工作正常,但$ .ajax(...)不是。我想在jquerying.js工作中的valid()函数中创建$ .ajax(...)
jquerying.js文件中的valid()函数中的$ .ajax(...)存在问题
这是我的html文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charse="utf-8">
<title> jquerying </title>
<link rel="stylesheet" type="text/css" href="jquerying.css"/>
</head>
<body>
<br/>
<form>
Email: <input id="em" type="email"/> </input>
<input id="sub" type="submit"> </input>
<div id="emailf"> </div>
</form>
<script type="text/javascript" src="jquery.js"> </script>
<script type="text/javascript" src="jquerying.js"> </script>
</body>
</html>
我的jquerying.js文件如下:
$(document).ready(function()
{
$('#em').focusin(function()
{
if($(this).val()=='')
{
$('#emailf').html('Enter your email');
}
else
{
valid($(this).val());
}
}).blur(function()
{
$('#emailf').html('');
}).keyup(function()
{
if($(this).val()!='')
{
$('#emailf').html('');
valid($(this).val());
}
else
{
$('#emailf').html('Enter your email');
}
});
});
function valid(emailer)
{
$.ajax({url: 'email.php', type: 'POST', data: {emailer: emailer},
function(info)
{
$('#emailf').html(info);
}
});
/* $.post('email.php', {data: emailer}, function(info)
{
$('#emailf').html(info);
}); */
}
在jquerying.js文件的valid()函数中,$ .post(...)工作正常btw!
我的email.php是:
<?php
if(isset($_POST['emailer']))
{
$email= $_POST['emailer'];
echo $email;
}
?>
答案 0 :(得分:2)
您的AJAX调用语法看起来不正确。 Here is the documentation
这就是你的电话应该是什么样的
$.ajax({
url: 'email.php',
type: 'POST',
data : { emailer : emailer }
})
.done(function (data) {
console.log("success", data);
$('#emailf').html(data);
})
.fail(function (data) {
console.log("error", data);
})