AJAX,刷新输入字段

发布于 2024-10-06 06:35:59 字数 911 浏览 3 评论 0原文

我第一次将 AJAX 与 PHP 和 mySQL 结合使用。 我一直在关注一些有关如何将 AJAX 与 INPUT 字段结合使用的示例和教程。

我有一个带有 2 个输入字段的表单。

  • 第一个输入字段:用户输入 4 位数字
  • 第二个输入字段:在 mySQL 数据库中查找 4 位数字并在此字段中输出。

大多数示例都基于 div 和 span 中的输出,而我对第二个 INPUT 字段的输出感兴趣。

这怎么可能?

我的 js 文件:

function showUser(str)
{
  if (str=="")
  {
    document.getElementById("txtHint").innerHTML="";
    return;
  }
  if (window.XMLHttpRequest)
  {
    // code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
  }
  else
  {
    // code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  xmlhttp.onreadystatechange=function()
  {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
      document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
  xmlhttp.open("GET","include/postalcode.php?q="+str,true);
  xmlhttp.send();
}

I am using AJAX for the first time with PHP and mySQL.
I have been following some examples and tutorials on how to use AJAX with INPUT fields.

I have a form with 2 input fields.

  • 1st input field: User type in 4 digits
  • 2nd input field: The 4 digits are looked up in the mySQL db and outputted on this field.

Most examples are based on output in div's and span's while i am interested in output on my 2nd INPUT field.

How is this possible?

My js-file:

function showUser(str)
{
  if (str=="")
  {
    document.getElementById("txtHint").innerHTML="";
    return;
  }
  if (window.XMLHttpRequest)
  {
    // code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
  }
  else
  {
    // code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
  xmlhttp.onreadystatechange=function()
  {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
      document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
  xmlhttp.open("GET","include/postalcode.php?q="+str,true);
  xmlhttp.send();
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

楠木可依 2024-10-13 06:35:59

您已编写:

document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

而不是 innetHTML 使用值:

document.getElementById("txtHint").value=xmlhttp.responseText;

You have written :

document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

Instead of innetHTML use value:

document.getElementById("txtHint").value=xmlhttp.responseText;
尸血腥色 2024-10-13 06:35:59

大多数示例都基于 div 和 span 中的输出,而我对第二个 INPUT 字段的输出感兴趣。

您应该能够通过两个更改来遵循示例:

  • 使用 .value 而不是 .innerHTML
    对于输入字段,
  • 通过以下方式查找第二个输入字段
    它的 ID

document.getElementById("secondFieldId").value=xmlhttp.responseText;

Most examples are based on output in div's and span's while i am interested in output on my 2nd INPUT field.

You should be able to follow the examples with two changes:

  • use .value instead of .innerHTML
    for input fields
  • look up your second input field by
    its ID

document.getElementById("secondFieldId").value=xmlhttp.responseText;

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文