.ajax()不会在jquery中工作

时间:2014-11-20 00:52:12

标签: php jquery

我是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;
}       
?>

1 个答案:

答案 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);
})