javascript - Ajax,如何从 HTML 表单获取数据

标签 javascript html ajax forms

此刻,我对 Ajax 感到抓狂,有些东西我没有得到。

我希望用户输入密码,然后输入新密码两次,但我想使用 Ajax 将该数据发送到 PHP 脚本以进行检查,并在需要时将新密码存储在数据库中。

我只是不明白如何将数据从 HTML 表单获取到 Ajax 脚本。无论我在互联网上查找什么信息,似乎都让我感到困惑,但我觉得,当我试图寻找 Java 相关产品的帮助时,情况似乎总是如此。

这就是 Ajax:

ajaxRequest.onreadystatechange = function()
{
    if(ajaxRequest.readyState == 4){
        //document.myForm.time.value = ajaxRequest.responseText;
        document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
}

var queryString = "?oldpass=" + oldpass + "&newpass=" + newpass + "&newpassretype="     + newpassretype;

ajaxRequest.open("post", "serverTime.php", true);
ajaxRequest.send(queryString); //Would use this to send post data (passwords) to the script

我错过了所有特定于浏览器的内容,因为我确信您以前已经看过它们。

<form>
<input type="password" name="oldpass" id="oldpass" />
<input type="password" name="newpass" id="newpass" />
<input type="password" name="newpassretype" id="newpassretype" />
<input type="submit" onclick="ajaxFunction('oldpass', 'newpass', 'newpassretype')" name="button2" id="button2" value="Change Password" />
<div id="txtHint"></div></form>

我想我错过了一些东西,但我不知道它是什么!有什么想法吗?

感谢您抽出时间,我希望这不是一件愚蠢的事情。

最佳答案

只需更改这一行即可工作...

var queryString = "?oldpass=" + document.forms[0]["oldpass"].value +
    "&newpass=" + document.forms[0]["newpass"].value +
    "&newpassretype=" + document.forms[0]["newpassretype"].value;

但是有两件事......

  1. 您将在 URL 中传递密码和确认信息。这不是必需的,因为您应该在客户端检查它们是否相同,而不是将它们发送到服务器端进行检查。

  2. 您不应在 URL 中发送密码信息,因为这是世界上最容易捕获的信息。

关于javascript - Ajax,如何从 HTML 表单获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8837399/

相关文章:

javascript - 使用 angular.js 获取和更新 json

javascript - Object.assign 带有外部 npm dep 的 Babel

HTML:文本环绕的行内 block 元素与图像之间无法解释的垂直间隙?

javascript - Phonegap AJAX 请求未定义

javascript - 在 PostgreSQL 中 COPY/INSERT ON CASCADE 的最佳方法是什么?

javascript - 如何修改 DOM 元素的位置而不创建新元素?

html - 将一个 div 居中,部分在屏幕外

html - Css 全局计数器

ajax - 如何确认多个 AJAX 调用已完成?

javascript - 实现 AJAX post 的问题