Javascript 表单提交之前,对DB onchange的AJAX查询

Javascript 表单提交之前,对DB onchange的AJAX查询,javascript,php,ajax,Javascript,Php,Ajax,我有一个用户设置/创建表单,其中包括在用户设置过程中请求用户许可证/证书号。但是,在正式提交完整表单之前,我需要验证输入的许可证信息并将其返回给target DIV Onchange。据我所知,AJAX帖子是实现这一点的方法,但我从未使用过AJAX。我在看一个关于学校的例子 但它使用的是单个select设置的值。在我的例子中,我有3个单独的表单字段,这些字段通常经过清理并发送到一个独立的PHP文件中,该文件在提交时需要3个变量,就像正常情况一样 当我需要向接收PHP处理文件传递/提交3个变量时,

我有一个用户设置/创建表单,其中包括在用户设置过程中请求用户许可证/证书号。但是,在正式提交完整表单之前,我需要验证输入的许可证信息并将其返回给target DIV Onchange。据我所知,AJAX帖子是实现这一点的方法,但我从未使用过AJAX。我在看一个关于学校的例子 但它使用的是单个select设置的值。在我的例子中,我有3个单独的表单字段,这些字段通常经过清理并发送到一个独立的PHP文件中,该文件在提交时需要3个变量,就像正常情况一样

当我需要向接收PHP处理文件传递/提交3个变量时,当最后一个表单字段退出onblur时,是否可以使用POST方法向我演示如何完成w3schools示例发出的AJAX调用

形式

回应目标

<div id="datatarget">&nbsp;</div>

这是我从检查时间的ajax调用中剪切和粘贴的代码。它向服务器发送多个变量

再次编辑,指出这个ajax调用使用jquery,有些人对此表示不满,但我发现它对于ajax调用非常简单和直接

 $("#startdate,#starttime,#enddate,#endtime" ).change(function(){
    $("#date_error").show('');  //clears the error display
    $("#date_error").html('...validating');  //puts a temporary value
    var startdate=$("#startdate").val();  
    var starttime = $("#starttime").val();
    var enddate=$("#enddate").val();
    var endtime=$("#endtime").val();

    startdate = startdate + ' ' + starttime;  //combine date and time
    enddate = enddate + ' ' + endtime;    //combine date and time

    $.post("http://www.mysite.net/contest/validate/",
    {
        startdate:startdate,  //sends to server with post collection
        enddate:enddate,
        id:id
    }, 
    function(data,status) {
      $("#date_error").html(data);

    });  //.post
  }); // keyup

在玩了几个小时后,我了解到以下代码是有效的,这是jquery/ajax的组合???无论如何,这是成功的最终结果:

<div>Active license?<input name="sffl" type="checkbox" value="1">Yes | License# 
<input name="dig1" type="text" size="5" maxlength="1" placeholder="5">-
<input name="dig2" type="text" size="8" maxlength="2" placeholder="12">-
<input name="dig3" type="text" size="7" maxlength="3" value="XXX" disabled>-
<input name="dig4" type="text" size="7" maxlength="2" value="XX" disabled>-
<input name="dig5" type="text" size="7" maxlength="2" value="XX" disabled>-
<input name="dig6" type="text" size="10" maxlength="5" placeholder="22131">
</div>
test.php包含:

echo $_POST["var1"].'<br>';
echo $_POST["var2"].'<br>';
echo $_POST["var3"].'<br>';

好的,在尝试使用您提供的内容作为我不知道的内容的基础时,我的代码如下所示,将post值分配给$a、$b和$c——post可能工作正常,但我不知道如何将其返回到进行ajax调用的此页面的响应数据。你能告诉我哪里错了,或者我需要做什么不同的事情吗?我需要响应成为datatarget$document.readyfunction{$dig6.blurfunction{var$a=$dig1.val;var$b=$dig2.val;var$c=$dig6.val;$的内部HTML。posthttp://www.mywebsite.com/xyz.php,{var1:$a,//使用后期收集var2:$b,var3:$c},functiondata,status发送到服务器{$datatarget.htmldata;};//.post};};行functiondata,status是返回ajax调用结果的位置。返回的是数据,status是…status。
$(document).ready(function()        {

$("#dig6").blur(function(){

$.ajax({
            type : 'POST',
            url : 'test.php',           
            data: {
                var1 : $('#dig1').val(),
                var2 : $('#dig2').val(),
                var3 : $('#dig6').val()
            },
            success:function (data) {
                $("#datatarget").append(data);
            }     });  });   });
echo $_POST["var1"].'<br>';
echo $_POST["var2"].'<br>';
echo $_POST["var3"].'<br>';