Parameters and AJAX, PHP


Parameters and AJAX, PHP

我正试图从一个PHP页面中检索信息,该页面查询基于?id=给定的参数。通过AJAX这样做应该为用户提供特定项目等的信息。如果数据库中不存在id参数,则用户将被重定向到查找页面。

当查看AJAX示例并遵循相同的步骤时,该参数似乎没有用于MySQL查询——它使用标头信息重定向我并检索查找页面,就好像给定了一个不正确的值,但ID存在。

有什么问题吗?

var id=$('#code').val;是用户提供要查找的ID的输入。

$(document).ready(function() {
$('#check').click(function() {
    var id = $('#code').val;
    if (id=="")
      {
      document.getElementById("result").innerHTML="";
      return;
      } 
    if (window.XMLHttpRequest)
      {
      xmlhttp=new XMLHttpRequest();
      }
    else
      {
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("result").innerHTML=xmlhttp.responseText;
        }
      }
    xmlhttp.open("GET","result.php?id="+id,true);
    xmlhttp.send();
});
});

developerCK在这一行中提到的关于jQuery语法错误的进一步内容:

var id = $('#code').val;  // Should be: var id = $('#code').val();

通过切换到AJAX请求的jQuery语法,您可以节省大量的打字。以下是一些开始使用jQuery/AAJAX的帖子:

的一个简单例子

更复杂的示例

根据下拉列表1中的选择填充下拉列表2

试试这个代码:

$(document).ready(function() {
    'use strict';
    $('#check').click(function() {
        var id = $('#code').val();
        if (id==="") {
            $("#result").html('');
            return;
        } 
        $.ajax({
            type: 'GET',
            url: 'result.php',
            data: {
                id: id
            }
        }).done(function(data){
            $("#result").html(data);
        });
    });
});